Thread Texte in Zeichenkette tauschen (8 answers)
Opened by Benutzer at 2008-09-09 11:02

pq
 2008-09-09 12:42
#114415 #114415
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
Benutzer+2008-09-09 10:19:23--

Beispiel:
Code: (dl )
1
2
3
4
5
%tausche = (
'eins' => 'zwei',
'zwei' => 'eins',
'drei' => 'vier');
$zeichen = 'bla eins bla zwei bla drei bla vier bla zweiundzwanzig';

Im Text zweiundzwanzig ist das Muster zwei enthalten und wird auch ersetzt. Soll aber nicht.

dazu noch als anmerkung:
möchtest du tatsächlich 2 wörter ersetzen, von denen eines ein teilwort des anderen ist,
musst du die wörter vor dem bauen der regex noch nach länge sortieren. vergess ich auch
immer mal wieder. also
map { quotemeta $_ } sort { length $b <=> length $a } ...
damit wird immer das längste wort gematcht.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem

View full thread Texte in Zeichenkette tauschen