[PHP] Regex für :name|translate() optional

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Tiffany Dicks, 18. Mai 2015 .

Schlagworte:
  1. 18. Mai 2015
    Hallo.

    Ich bräuchte mal Hilfe bei einer Regex.

    Ich bekomme es hin Templates nach ''|translate zu scannen. Leider jedoch nicht mit der Ausnahme das es auch Templates mit 'Mein Name ist :name'|translate({":name":"Heinz"}) gibt. Also mit Optionen.

    Um zu sagen kann vorkommen, muss aber nicht gibt es ja ? ...

    Wie kann ich sagen ''|translate und (.*) kann muss aber nicht? einfach ein ? hinter ) bringt natürlich nichts weil das ja nur auf ein Zeichen achtet.

    Eventuell '.*'|translate((.*))? hm

    Wäre echt für Hilfe dankbar!
     
  2. 18. Mai 2015
    AW:
    PHP:
     Regex für  : name | translate [/ b ]

    Regx 'Mein Name ist (\w+)' (| translate \((.*)\))?

    Du müsstest  die ()  mit backslash entwerten weil das sonst als Metazeichen gilt .

    Bin aber auch nicht ganz schlau geworden wie der String aussieht der Verarbeitet wird und welche Info genau alles ausgelesen werden soll .
     
  3. 18. Mai 2015
    AW:
    PHP:
     Regex für  : name | translate ()  optional [/ b ]

    Ok Also der String wäre zum Beispiel wie folgt

    {{  'Hallo' | translate  }}  oder  {{  'Hallo mein Name ist :name' | translate ({ "name" : "Hans" }) }}

    Ich brauche das zwischen  ' & '  also Hallo oder Hallo mein Name ist  : name und wenn verfügbar  die  Optionen also den JSON String  ...

    Ist nen Twig Filter Und ich baue nen Scanner für  die  Strings  die  im Backend übersetzt werden können sollen .
     
  4. 18. Mai 2015
    AW:
    PHP:
     Regex für  : name | translate ()  optional [/ b ]

    [
    php ] preg_match ( "@{{ '(.*)'(\|translate|\|translate\((.*)\))? }}@Usi" , $str , $m );
    $m[1] ist Name
    Wenn $m[2] vorhanden dann $m[3] ist JSON String
     
  5. 18. Mai 2015
    AW:
    PHP:
     Regex für  : name | translate ()  optional [/ b ]

    Danke Leider findet er  die  Strings mit  "Optionen"  überhaupt nicht Stehen zumindest nicht in der Ergebnisliste .
    Komisch Sieht richtig aus irgendwie ...
     
  6. 19. Mai 2015
    AW:
    PHP:
     Regex für  : name | translate ()  optional [/ b ]

    @
    Tiffany Dicks

    [ URL = "http://www.regexe.de/" ] Hier [/ URL kannst Du Regex online auf seine Funktion testen und  die  Seite  [ URL = "http://weitz.de/regex-coach/" ] The Regex Coach  interactive regular expressions [/ URL könnte auch hilfreich sein
     
  7. 24. Mai 2015
    AW:
    PHP:
     Regex für  : name | translate ()  optional [/ b ]

    Um das sauber zu parsen brauchst du einen rekursiven regulären Ausdruck .

    [
    url = "http://php.net/manual/de/regexp.reference.recursive.php" ] PHP Recursive patterns  Manual [/ url ]

    Probier ' damit mal rum, sollte auf jeden Fall machbar sein ;)

    Der reguläre Audruck von raid-rush geht zwar auch, fliegt dir aber sehr schnell auseinander.
     
  8. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.