Ich habe diese Frage - Capture group reference + numeralCapture Gruppe + Ziffer für PHP
Ich habe versucht, mit beiden Möglichkeiten, die dort zur Verfügung gestellt. Hier ist Beispielcode mit ECMAScript Ausdruck (Ich glaube, ich brauche diese zu verwenden, korrigieren Sie mich, wenn ich falsch bin) -
$string = "box.last_rollout_revision = dummy";
$regex = "/(box\.last_rollout_revision[\s]*=[\s]*)[a-z0-9-_]*([\n]*)/";
$test = "234";
$replacementPattern = "$1".$test."$2";
echo preg_replace($regex,$replacementPattern,$string);
Erwartete Ausgabe
box.last_rollout_revision = 234
Actual bekommen
34
PS Ich versuche, Wert gegen einen Schlüssel in einer Konfigurationsdatei zu ersetzen, die mehrere andere Schlüssel-Wert-Paare hat. Ich denke, Regex wird es in diesem Fall einfacher machen. Korrigiere mich, wenn ich falsch liege.
@Sandeepan Nath einfach zu erklären - Ihr '$ replacementPattern' endete wie' 1234 $ $ 2' es für Capture-Gruppe suchen macht nicht. '1234'. – ClasG
@Wiktor wenn ich das gleiche auf http://phptester.net/ versuche, gibt es mir die Ausgabe - 'abc', mit einem Hinweis -' HINWEIS Undefinierte Variable: 1 in Zeile Nummer 8' –
Nur getestet und es erhielt ' box.last_rollout_revision = 234' –