• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Suchen und Ersetzen mit Unterschieden

blabla33

Neues Mitglied
Ich möchte eine Variable nach einem Platzhalter durchsuchen. Zunächst einmal möchte ich bestimmen, wie oft die gesuchte Zeichenkette vorkommt.
Anschließend soll jedes Vorkommen ersetzt werden, dabei aber nicht mit der gleichen Zeichenkette. Und genau das ist mein Problem.

z.B. soll aus

blabla xxx blabla xxx blablabla

folgendes werden:

blabla ET_1 blabla ET_2 blablabla

Mit str_replace kann ich immer nur die gleiche Zeichenkette einfügen.
 
Wir oft willst denn noch eine Thema mit fast identischem Inhalt aufmachen. Hast doch schon einen Hinweis bekommen wie du es machen kannst. Geh halt selbst durch die Zeichenkette (suche mit PHP: strpos - Manual), zähle hoch und ersetze dann das aktuell gefundene.
 
Puh, durch die Threads findet sich wirklich kein Mensch mehr durch. :-|

preg_replace_callback wäre auch eine Möglichkeit.

PHP:
<?php

$text         = 'blabla xxx blabla xxx blablabla';
$searchString = 'xxx';

echo preg_replace_callback(
    '/' . preg_quote($searchString, '/') . '/',
    function ($matches) {
        static $count = 0;
        $count++;
        return 'ET_' . $count;
    },
    $text);
 
Zurück
Oben