+ Antworten
Ergebnis 1 bis 5 von 5

Thema: Suchen und ersetzen

  1. #1
    TP-Veteran manuelito hilft, wo's geht manuelito hilft, wo's geht manuelito hilft, wo's geht Avatar von manuelito
    Registriert seit
    Sep 2002
    Beiträge
    1.229

    Suchen und ersetzen

    Hallo,

    wie könnte ich folgendes Problem am elegantesten lösen: ich habe einen String mit n gleichen Zeichen, die ersetzt werden sollen. Dabei soll bei jedem gefundenen Zeichen der nächste Wert aus einem Array verwendet werden.

    Also etwa so: "Hallo, das ? ein ? zum testen". Jetzt soll jedes ? mit dem nächsten Wert aus einem Array ersetzt werden.

    array( "ist", "Satz" );

    Als Ergebnis käme dann "Hallo, das ist ein Satz zum testen" heraus. Ich habs zuerst mit preg_replace_callback versucht, wo ich dann in der Callbackfunktion einen Index inkrementiere, um den nächsten Wert aus einem Array zu lesen. Allerdings ist das ziemlich hässlich, da sich das ganze in einer Klasse abspielt und ich da mit create_function eine anonyme Funktion erstellen muss. Gibt's da eine elegantere Funktion?

    Danke!
    Wer sabotiert eigentlich ständig meine Signatur?

  2. #2
    TP-Special Mod steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User Avatar von steffenk
    Registriert seit
    Feb 2005
    Ort
    Haan / NRW
    Beiträge
    12.869
    ich seh auch nur die callback-methode mit einem static index, der erhöht wird.


    TYPO3 · MySQLDumper · dislabs
    ·
    manche Mühlen mahlen schneller ...
    "Ich habe Rücken"
    Horst Schlämmer


  3. #3
    TP-Veteran manuelito hilft, wo's geht manuelito hilft, wo's geht manuelito hilft, wo's geht Avatar von manuelito
    Registriert seit
    Sep 2002
    Beiträge
    1.229
    Hmm, also funktionieren tut's. Ich schau jetzt mal ob das noch optimaler geht, wenn ich das über explode() löse weil ich hier mit globals fummeln muss und das passt mir nicht recht ins Konzept
    Wer sabotiert eigentlich ständig meine Signatur?

  4. #4
    TP-Special Mod steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User Avatar von steffenk
    Registriert seit
    Feb 2005
    Ort
    Haan / NRW
    Beiträge
    12.869
    vll auch so eine Lösung

    PHP-Code:
    $s=explode('?',$text);
    $i=0;
    foreach(
    $s as $part) {
      
    $out .= $part.$replace[$i++];


    TYPO3 · MySQLDumper · dislabs
    ·
    manche Mühlen mahlen schneller ...
    "Ich habe Rücken"
    Horst Schlämmer


  5. #5
    TP-Veteran manuelito hilft, wo's geht manuelito hilft, wo's geht manuelito hilft, wo's geht Avatar von manuelito
    Registriert seit
    Sep 2002
    Beiträge
    1.229
    Danke!
    Wer sabotiert eigentlich ständig meine Signatur?

+ Antworten

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51