SED, wzorzec podzia

Potrzebujesz pomocy z C, C++, perl, python, itp.
wabikboy
Posty: 1
Rejestracja: 11 lutego 2012, 10:10

SED, wzorzec podziału wiersza

Post autor: wabikboy »

Witam!

Mam problem z pewnym tekstem, potrzebuję przenieść koniec tekstu do nowej linii, np.:

Kod: Zaznacz cały

jakiś tam tekst 16:00
Chcę aby 16:00 zaczynało się od nowej linii, z tym że nie zawsze jest 16:00.
fnmirk
Senior Member
Posty: 8295
Rejestracja: 03 grudnia 2007, 06:37

Post autor: fnmirk »

Awatar użytkownika
kodama
Junior Member
Posty: 633
Rejestracja: 23 maja 2010, 22:30
Lokalizacja: Poznań

Post autor: kodama »

Jeżeli zawsze tam będzie coś w formacie XX:XX to nie najłatwiej będzie sobie zrobić np:

Kod: Zaznacz cały

tail -c 6
i wtedy to obrobić jak będzie potrzeba?
Awatar użytkownika
lessmian2
Member
Posty: 1088
Rejestracja: 30 kwietnia 2008, 19:38
Lokalizacja: Kraków

Post autor: lessmian2 »

Kod: Zaznacz cały

lessmian@pyrtek ~ $ echo 'jakiś tam tekst 16:00' | sed 's/jakiś tam tekst 16:00/jakiś tam tekst \n16:00/'
jakiś tam tekst 
16:00
Wystarczy jakieś wyrażenie regularne stworzyć do tego ,,jakiś tam tekst''.
mlodir
Posty: 30
Rejestracja: 31 maja 2009, 16:45

Post autor: mlodir »

Napisałem na szybko wersję rozwiązania w pythonie:

Kod: Zaznacz cały

plik = raw_input("Podaj sciezke do pliku: ")
p = open(plik, "r")
line = ""
line2 = ""
tresc = ""

for line in p:
  if ":" in line:
    line = line[0:-6] + "\n" + line[-6:-1] + "\n"

  tresc += line

p.close()
p = open(plik, "w")
p.write(tresc)
p.close()
ODPOWIEDZ