[Vienna-pm] Gleichen Anfang in mehreren Zeilen entfernen
peter pilsl
pilsl at goldfisch.at
Sun May 22 12:17:59 PDT 2005
>
> Ich würde schon zuvor prozedural das größten gemeinsamen anfangs string
> bestimmen und dann mit einer RE entfernen. Meines wissen, ist das mit RE
> nicht möglich einen unbekannten gemeinsamen string zu entfernen.
> (Andererseits kann man mit RE Sachen machen, die ich nie begreifen werd,
> als möglich ist es sicher irgendwie...)
>
regular expressions sind echt cool :) und das geht schon
also der ansatz lautet hier wie folgt (untested)
$str=~/(.*\/)\n\1/;
sucht nach gleichen anfängen in $str, die mit / enden
\1 ist hier die referenz auf das bekannte $1 schon in der expression.
ein kleines beispiel für die commandline:
perl -e '$a="hans/kurt/esel\nhans/kurt/emmi"; print $1,"\n" if
$a=~/(.*\/).*\n\1/'
gibt als ergebnis hans/kurt/
das ausführen des ganzen für ersetzung und das mehrfach bleibt dem OP
überlassen oder jemand anderem. Ich selbst muss dringenst was essen ;)
lgp
--
mag. peter pilsl
goldfisch.at
IT-management
tel +43 699 1 3574035
fae +43 699 4 3574035
pilsl at goldfisch.at
More information about the Vienna-pm
mailing list