Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] "Komplexe" String-Zerlegung

Einklappen

Neue Werbung 2019

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

  • [Erledigt] "Komplexe" String-Zerlegung

    Moin,

    angenommen ich habe folgenden strg:
    PHP-Code:
    $foo '%foo%%bar%,%baz% -Lorum Ipsum: %bat%'
    Diesen würde ich gerne so zerlegen, dass ich ein Array bekomme, das mir nur Werte liefert, die jewils zwischen den % gewrapt sind. In obigen Bsp. sollte das Array also:
    foo, bar, baz, bat
    ergeben.

    Mit explode oder preg-split bin ich nicht weiter gekommen.

    Gibt's da eine PHP-Funktion für oder muss ich die selbst schreiben?

    Danke!
    e.

  • #2
    Hallo,

    Text zwischen Anführungszeichen auslesen - Reguläre Ausdrücke - hallophp.de

    ist im Grunde nichts Anderes.

    Gruß
    [URL]http://hallophp.de[/URL]

    Kommentar


    • #3
      Schau dir mal [MAN]preg_match_all[/MAN] an, damit solltest du es hinbekommen.
      [IMG]https://g.twimg.com/twitter-bird-16x16.png[/IMG][URL="https://twitter.com/fschmengler"]@fschmengler[/URL] - [IMG]https://i.stack.imgur.com/qh235.png[/IMG][URL="https://stackoverflow.com/users/664108/fschmengler"]@fschmengler[/URL] - [IMG]http://i.imgur.com/ZEqflLv.png[/IMG] [URL="https://github.com/schmengler/"]@schmengler[/URL]
      [URL="http://www.schmengler-se.de/"]PHP Blog[/URL] - [URL="http://www.schmengler-se.de/magento-entwicklung/"]Magento Entwicklung[/URL] - [URL="http://www.css3d.net/"]CSS Ribbon Generator[/URL]

      Kommentar


      • #4
        Zitat von echo Beitrag anzeigen
        Mit explode oder preg-split bin ich nicht weiter gekommen.
        Solche Aussagen sind für die Tonne. Zeig her, was du versucht hast - dann können wir dir auch sagen, was du dabei falsch machst.
        [SIZE="1"]RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?[/SIZE]

        Kommentar


        • #5
          Danke an Aspiak u. fab, für die meine Aussage offenbar nicht "für die Tonne" war!
          PHP-Code:
          $val_set '%foo%%bar%,%baz% - %bat%';
             
          preg_match_all('/([%])([^\1]*?)\1/'$val_set$matches);
          var_dump($matches); 
          ergibt:
          array(3) {
          [0]=>
          array(4) {
          [0]=>
          string(5) "%foo%"
          [1]=>
          string(5) "%bar%"
          [2]=>
          string(5) "%baz%"
          [3]=>
          string(5) "%bat%"
          }
          [1]=>
          array(4) {
          [0]=>
          string(1) "%"
          [1]=>
          string(1) "%"
          [2]=>
          string(1) "%"
          [3]=>
          string(1) "%"
          }
          [2]=>
          array(4) {
          [0]=>
          string(3) "foo"
          [1]=>
          string(3) "bar"
          [2]=>
          string(3) "baz"
          [3]=>
          string(3) "bat"
          }
          }

          Kommentar


          • #6
            Ach, eine kleine Nebenfrage noch bitte:

            Wie nennt man im Fachjargon eigentlich diese Wrap-Zeichen/begrenzer, also in meinem Bsp. die %?? Sowas gibt's ja z.B. auch bei smarty, etc.

            Kommentar


            • #7
              Also bei Smarty heißen sie delimiter
              [IMG]https://g.twimg.com/twitter-bird-16x16.png[/IMG][URL="https://twitter.com/fschmengler"]@fschmengler[/URL] - [IMG]https://i.stack.imgur.com/qh235.png[/IMG][URL="https://stackoverflow.com/users/664108/fschmengler"]@fschmengler[/URL] - [IMG]http://i.imgur.com/ZEqflLv.png[/IMG] [URL="https://github.com/schmengler/"]@schmengler[/URL]
              [URL="http://www.schmengler-se.de/"]PHP Blog[/URL] - [URL="http://www.schmengler-se.de/magento-entwicklung/"]Magento Entwicklung[/URL] - [URL="http://www.css3d.net/"]CSS Ribbon Generator[/URL]

              Kommentar


              • #8
                Dieser Begriff ist aber leider auch sonst mannigfaltig belegt (bspw. für Stringbegrenzer und für Begrenzer von reg. Ausdrücken). Typisch IT halt.
                [COLOR="#F5F5FF"]--[/COLOR]
                [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
                „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
                [COLOR="#F5F5FF"]
                --[/COLOR]

                Kommentar

                Lädt...
                X