Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Anführungszeichen in Textstring ersetzen [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Anführungszeichen in Textstring ersetzen


 
Tobse_TeamWorX
21-05-2003, 16:39 
 
Hallo Ihr,

ich habe ein Problem mit regulären Ausdrücken:

In einem Textstring möchte ich normale Anführungszeichen " durch Guillemets (» und « ). Zum einen weils schöner aussieht. Zum anderen weil der String an ein Javascript übergeben wird und durch die unmaskierten " die Funktion nicht läuft. Jetzt probier ich schon den ganzen Mittag rum und komme zu keiner anständigen Lösung.

Beispieltext:
Mittagstisch: Schnitzel "Wiener Art" mit Salat 5,80€ +++ Chickencurry "Bombay" 5,30€ +++

Wie kann ich über einen regulären Ausdruck das erste Anführungszeichen durch » ersetzen und das zweite durch «? Was passiert, wenn weiter hinten im Text nochmal ein durch Anführungszeichen eingeschlossenes Textstück kommt?

:dontknow:

Wo finde ich ein gutes Tutorial über reguläre Ausdrücke???

Vielen Dank für jeden Tipp,
Tobse.

 
guestguest
21-05-2003, 16:47 
 
ein konstruktiver beitrag:

das geht nicht, bzw. nicht mit einer vordefinierten funktion
ausserdem: suche benutzen

prädikat: wertvoll

 
TobiaZ
21-05-2003, 16:55 
 
Tut: guckst du bei uns!

Also ne FKT musst du dir selber schreiben. Sollte möglich sein, mit counter, substr, strtopos und so weiter. viel spass.

 
goth
21-05-2003, 17:25 
 
Und warum nicht einfach so:

echo preg_replace("/(\"([^\"]+)\")/", "»$2«", "Mittagstisch: Schnitzel \"Wiener Art\" mit Salat 5,80€ +++ Chickencurry \"Bombay\" 5,30€ +++");

 
TobiaZ
21-05-2003, 17:35 
 
hab ich doch gesagt! :D

 
Tobse_TeamWorX
23-05-2003, 08:31 
 
Original geschrieben von goth
Und warum nicht einfach so:

echo preg_replace("/(\"([^\"]+)\")/", "»$2«", "Mittagstisch: Schnitzel
\"Wiener Art\" mit Salat 5,80€ +++ Chickencurry \"Bombay\" 5,30€ +++");


Genau das war's!!! Danke.
Ich habe mich seither nicht allzu intentsiv mit regulären Ausdrücken beschäftigt. Gibt's da irgendwo ein gutes Tutorial?

Was mich irritiert (und auf die Gefahr hin, dass ich mich wegen meiner Unwissenheit blamiere!):
Ich habe seither im Zusammenhang mit regulären Ausdrücken nur die ereg- und die split-Funktionen kennen gelernt.
Hier im Forum wird aber immer mit preg_replace gearbeitet. Was hat's damit auf sich?:confused:

 
TobiaZ
23-05-2003, 13:05 
 
Ähm, wie wärs mal mit lesen?

Tutorial: Haben wir auf unseren Seiten! (immernoch :))

preg_...: Mal n blick ins Manual. Hilft hin und wieder mal!


Alle Zeitangaben in WEZ +2. Es ist jetzt 15:34 Uhr.