Replace Explizit anwenden

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Replace Explizit anwenden

    Hallo, ich habe ein Problem.
    Und zwar habe ich in meiner Tabellenspalte folgendes stehen:

    Gestern war ich auf der Autobahn mit meinem Auto.

    Nun möchte ich per SQL das Wort Auto durch Fahrrad ersetzen.
    Code:
    UPDATE Tabelle SET Row = replace(Row, 'Auto', 'Fahrrad');
    Es kommt allerdings folgendes raus:

    Gestern war ich auf der Fahrradbahn mit meinem Fahrrad.

    Es sollte aber rauskommen:

    Gestern war ich auf der Autobahn mit meinem Fahrrad.

    Jemand eine Idee wie es aussehen muß das er nur exakte Wörter ersetzt?

    mfg

  • #2
    So habe nochmal etwas versucht, allerdings geht das auch nicht so richtig.

    Code:
    $result = $db->query("SELECT * FROM Tabelle");
    while ($row = $db->fetch_array($result)) {
    $ids = $row['id'];
    $word1 = "Auto";
    $word2 = "Fahrrad";
    $besch = $row['beschreibung'];
    $s[$ids] = "/([\s])".$word1."([\s\.\,\:\?\!)])/isUe";
    $r[$ids] = "\\1".$word2."\\2";
    $rof = preg_replace($s, $r, $besch);
    $db->unbuffered_query("UPDATE Tabelle SET beschreibung='".addslashes($rof)."' WHERE id='$ids'");

    Kommentar


    • #3
      PHP-Code:
      $text "Gestern war ich auf der Autobahn mit meinem Auto.";
      echo 
      preg_replace('#\\bAuto\\b#''Fahrrad'$text); 
      geht aber wohl auch mit mysql, weil das kann auch regex, siehe http://dev.mysql.com/doc/refman/5.0/en/regexp.html
      Zuletzt geändert von ghostgambler; 01.05.2006, 16:07.

      Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

      bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
      Wie man Fragen richtig stellt

      Kommentar


      • #4
        Super hat mir geholfen, danke.

        Kommentar

        Lädt...
        X