Substitution von &
TOM
- perl
Hallo Volk!
Mein Problem:
& durch & ersetzen
Meine Idee:
$GetString =~ s/&/&/msg; (msg wegen: es handelt sich um einen mehrzeiligen ausdruck.)
Mein Output
& wird nun zu: &
Find ich nicht so tool.
Liegt das vielleicht an Windows oder so....
Gruß
tom
Hi,
Mein Problem:
& durch & ersetzen
mein Problem: Dieses Forum ersetzt automatisch & durch &... ;-)
Tu mir bitte den Gefallen, und schreibe Dein Problem noch mal. Laß beim "& amp;" am besten einfach das "&" weg - wir verstehen es dann auch so *g* (Oder mach es wie ich und setze ein Leerzeichen dazwischen.)
Meine Idee:
$GetString =~ s/&/&/msg; (msg wegen: es handelt sich um einen mehrzeiligen ausdruck.)
/m brauchst Du nur, wenn Du ^ oder $ verwendest, /s brauchst Du nur, wenn Du den Punkt auch auf [\n\r] matchen lassen willst. /g reicht also.
Mein Output
& wird nun zu: &
Ich nehme an, Du meinst ein doppeltes "amp;", wo Du nur eins erwartet hast, richtig? Das sollte eigentlich kein Problem sein. Bist Du sicher, daß Du nur an einer einzigen Stelle die Ersetzung durchführst?
Cheatah
Also nochmal:
Hallo Volk!
Mein Problem:
& durch &_amp ersetzen
Meine Idee:
$GetString =~ s/&/&_amp/g;
Mein Output
& wird nun zu: &_amp;
Find ich nicht so tool.
Liegt das vielleicht an Windows oder so....
Gruß
tom
Zusammenfassung:
ich gebe & ein. Dann mache
ich meine Subst. (=~s/&/&_amp/g;)
und raus kommt
&_amp;amp (und ich habe doch nur ein & eingegeben.)
tom
Hallo Volk!
Hallo Herr und Gebieter ;-)
[...]
»»Zusammenfassung:
»»ich gebe & ein. Dann mache
»»ich meine Subst. (=~s/&/&_amp/g;)
»»und raus kommt
»»&_amp;amp (und ich habe doch nur ein & eingegeben.)
Das schaut so aus, als wenn Du versuchst in einem bestehenden HTML-Text (*g*) alle vorkommenden Sonderzeichen in deren HTML-Entities umzuwandel. Dabei wird natürlich auch das & von & in & umgewandelt ;-)
Was Du brauchst ist also eine: "zero-width negative look-ahead assertion".
$text =~ s/&(?!amp;)/&/g;
^............hier ist der Zauberstab ;-): findet & nur, wenn kein amp; folgt.
Gruß AlexBausW