|
|
Perl - regulární výrazy (nahrazování)
|
19.5.2010 21:01
Pavel Šrankota
|
Dobrý den,
Potřeboval bych znát syntaxi regulárního výrazu, který nahradí všechny výskyty řetězců v úvozovkách za \uv{retezec}.
Př:
Petr "šel" do lesa.
Petr \uv{šel} do lesa.
Předem děkuji za každou odpověď. |
|
|
Re: Perl - regulární výrazy (nahrazování)
|
22.5.2010 13:04
bugme NOT
|
Normalne by to bylo neco jako:
s/"(.*?)"/uv{$1}/g
Ale pokud text v uvozovkach muze byt na vice radcich a soubor neni moc velky, tak by asi bylo nejlepsi spolknout cely text a pouzit:
s/"(.*?)"/uv{$1}/gs
Pokud chcete v souboru menit jenom to(a soubor opet neni moc velky), tak v prikazovem radku:
perl -e 'local $/; $_ = <> ; s/"(.*?)"/uv{$1}/gs; print' <vstupni_soubor |
|
|
Re: Perl - regulární výrazy (nahrazování)
|
25.5.2010 16:22
Pavel Šrankota
|
Děkuji, ta první varianta bohatě postačí, jelikož ošetřuji jednotlivé řetězce vytažené z databáze. |
|
|
|
|
KOMENTARZE
|
Tylko zarejestrowani użytkownicy mogą dopisywać komentarze.
|
|
Szukanie oprogramowania
|
©Pavel Kysilka - 2003-2024 |
maillinuxsoft.cz | Design:
www.megadesign.cz
|