Text einmalig ersetzen

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • cnow
    replied
    preg_replace() hat recht weit geholfen, danke.


    cnow

    Leave a comment:


  • derHund
    replied
    hmm,

    metacharaktere müssen mit \ maskiert werden
    EDIT:
    falls sie nicht als metacharaktere benutzt werden

    http://www.php-resource.de/tutorials/read/10/1/

    EDIT:
    http://www.php-resource.de/manual.php?p=function.quotemeta ist dein freund
    Last edited by derHund; 20-02-2004, 20:29.

    Leave a comment:


  • cnow
    replied
    Also moment mal, ich würd hier nicht so dumm fragen, wenn ich nicht Anfänger wär. Es besteht ja die Möglichkeit, dass verschiedene Delimiter verschiedene Auswirkungen haben

    Ich les aus ner HTML Datei URLs aus und ersetz die durch ne andere URL.

    Bbeispiel: siehe oben

    Problem ist, dass alles, was ein '?' enthält von preg_replace nicht erkannt und ersetzt wird.

    Im Forum hab ich schon ein paar Sachen gefunden, aber da gings hauptsächlich drum, aus Text nen Link zu machen, aber das hilft mir nicht weiter, da bei den Sachen immer alle Links in nem Dokument ersetzt wurden, bei mir aber eine explizite URLdurch ne andere explizite URLersetzt werden soll.


    cnow

    Leave a comment:


  • derHund
    replied
    mein preg_replace sieht so aus
    $array = preg_replace("!$Eintrag!", $EintragNeu, $array,1);
    sehr witzig. was geht denn nicht ...

    Hab auch mal * o.ä als Delimiter genutzt. gleiches Ergebnis
    nein, ehrlich? was hattest du erwartet?

    Leave a comment:


  • cnow
    replied
    So ganz klappt es doch ncoh nicht.

    Ich ersetze damit URL durch ne andere URL

    http://www.ebay.de -> http://www.bla.de funktioniert auch einwandfrei, aber

    http://cgi.ebay.de/ws/eBayISAPI.dll?...tem=2044596179
    nach http://www.bla.de geht nicht.

    mein preg_replace sieht so aus

    $array = preg_replace("!$Eintrag!", $EintragNeu, $array,1);

    Hab auch mal * o.ä als Delimiter genutzt. gleiches Ergebnis


    cnow

    Leave a comment:


  • cnow
    replied
    Jaaa,danke,es funktioniert!

    Ihr seid echt fix hier


    cnow

    Leave a comment:


  • wahsaga
    replied
    Original geschrieben von cnow
    Danke, aber irgendwas mach ich falsch, in der Doku steht, limit ist int.

    Fehlermeldung:
    Delimiter must not be alphanumeric or backslas'h in Zeile soundso'
    limit und delimiter sind zwei ganz verschiedene sachen.

    delimiter sind die zeichen, die dein suchmuster vorne und hinten begrenzen. das kann z.b. ! sein, oder auch /. nur aufpassen, dass der delimiter, sollte er denn auch im suchmuster vorkommen, natürlich maskiert werden muss.

    Leave a comment:


  • cnow
    replied
    Danke, aber irgendwas mach ich falsch, in der Doku steht, limit ist int.
    Version : PHP 4.3.4

    Fehlermeldung:

    Delimiter must not be alphanumeric or backslas'h in Zeile soundso'

    Mein Code:

    $Eintrag und $EintragNeu sind Strings, in $array steht ein text aus ner MySQL-DB

    $array = preg_replace($Eintrag, $EintragNeu, $array,1);


    cnow

    Leave a comment:


  • mrhappiness
    replied
    http://www.php.net/preg-replace wird dein freund

    Leave a comment:


  • cnow
    started a topic Text einmalig ersetzen

    Text einmalig ersetzen

    Nachdem ich 6 von 20 Seiten über ersetzen durchgemacht hab, stell ich doch mal ne Frage

    Ich such ne Möglichkeit, in nem Text nur das erstmalige Vorkommen eines Worts zu ersetzen und nicht alle, wie das eben str_replace macht.



    cnow
Working...
X