[REGEX] Auslesen, durch ne Funktion schicken, zurückschreiben.

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [REGEX] Auslesen, durch ne Funktion schicken, zurückschreiben.

    Hiho,
    ich dachte an sowas wie "[bla]asdf[/bla]" und dass "asdf" dann durch ne Funktion geschickt wird und wieder an die gleiche Stelle des Strings geschrieben wird.

    Bsp.: Von "[groß]asdf[/groß]" soll "asdf" genommen werden, durch die Funktion strtoupper(); geschickt werden & wieder zurück geschrieben werden.

    Irgendwelche Ideen?

    Gruß,
    hipow.

  • #2
    entweder,

    - preg_replace mit modifier e
    - preg_replace_callback (zu mächtig für deine verwendungszwecke)

    http://www.php-resource.de/tutorials/read/10/1/
    Die Zeit hat ihre Kinder längst gefressen

    Kommentar


    • #3
      Hm thx,
      hab's mitlerweile soweit geschafft:

      preg_match("/[groß]*[/groß]/", $string, $matches);
      $matches[1] müsste - soweit ich es verstanden habe - doch alles zwischen [groß] und [/groß] liefern. Alles zwischen den beiden Strings durch ne Funktion zu schicken, ist ja nicht schwer; aber wie soll ich das, was die Funktion zurückgibt, wieder in $string schreiben an die richtige Stelle?

      Gruß,
      hipow.

      Kommentar


      • #4
        aber wie soll ich das, was die Funktion zurückgibt, wieder in $string schreiben an die richtige Stelle?
        entweder
        - preg_replace mit modifier e
        - preg_replace_callback (zu mächtig für deine verwendungszwecke)
        Die Zeit hat ihre Kinder längst gefressen

        Kommentar


        • #5
          Code:
          $text = "Hier steht [big]ein Text[/big] mit wenigen Worten";
          $text = preg_replace("/\[big\](.*?)\[\/big\]/e", "strtoupper('\\1')", $text);
          echo $text;

          Kommentar

          Lädt...
          X