Thread Gewisse Stelle im String ansprechen
(6 answers)
Opened by Umut at 2015-10-09 14:20
Die Syntax der regulären Ausdrücke in Deinem Code ist falsch — lies am besten mal perlretut und perlre.
Generell würde ich reguläre Ausdrücke für Textersetzungen vor allem dann empfehlen, wenn der zu ersetzende Text oder Teile davon bekannt sind, aber nicht wo er steht. Zum Beispiel ersetzt Code (perl): (dl
)
'Hallo sonstwer!' =~ s/\b\w+wer\b/Welt/r das erste Wort, das auf 'wer' endet durch 'Welt' und gibt 'Hallo Welt!' zurück. Derselbe reguläre Ausdruck würde auch noch mit 'Hallo irgendwer.' oder 'Bis bald sonstwer. Mach's gut!' auf der linken Seite analog funktionieren. Wenn man hingegen genau weiß, wo Text in einer Zeichenkette steht, aber nicht unbedingt weiß, was dort steht, dann sollte man tendenziell eher indexbasierte Zugriffsmethoden verwenden, insbesondere ist hier natürlich perlfunc substr zu nennen. Zum Beispiel gibt den Text Hallo Welt! aus. When C++ is your hammer, every problem looks like your thumb.
|