Bobby: preg_replace-Probleme

Moin

Ich habe probleme mit nem regulären Ausdruck bzw mit der Ersetzung. Denn das Muster wird bereits erkannt.

ich möchte im Text vorkommende zeichenfolgen ersetzen:

IF $irgendeine->variable?

Das habe ich probiert:

preg_replace('~IF( ){1}([a-zA-Z0-9$-> ^?]+)~','if ( ${2} ),$this->inhaltreturn);

ich möchte im prinzip den 2. Teilterm in das Ergebnis eingefügt haben.

ergebnis sollte sein: if ( $irgendeine->variable )

heraus kommt: if (  )

Wer kann mir den richtigen Gedankenanstoss geben. Muss zugeben, mit Rex-Exp hab ich bisher noch ni so viel zu tun gehabt. Da aber eine Ersetzung stattfindet, kann das ja so falsch ni sein.

Gruß Bobby

--
-> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
### Henry L. Mencken ###
-> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
## Viktor Frankl ###
ie:{ br:> fl:{ va:} ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
  1. Moin

    gelöst:

    preg_replace('~IF( ){1}([a-zA-Z0-9$-> ^?]+)~','if ( ${2} ),$this->inhaltreturn);

    preg_replace('~IF( ){1}([a-zA-Z0-9$-> ^?]+)~','if ( $2 ),$this->inhaltreturn);

    waren geschweifte Klammern zu viel.

    Gruß Bobby

    --
    -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
    ### Henry L. Mencken ###
    -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
    ## Viktor Frankl ###
    ie:{ br:> fl:{ va:} ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)