explode() oder preg_split

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

  • explode() oder preg_split

    Moin Leute,

    ich habe vor kurzer Zeit mit PHP angefangen hab aber schon Ehrfahrung mit C++ deswegen hab ich mir schon mein erstes Projekt vorgenommen.
    Und zwar hab ich folgendes Problem. Man gibt auf einer HTML Seite einen String ein: "2*C2H6(g) + O2(g)". Diesen will ich dann so teilen:
    array ( [stoff1]
    >[name] (C2H6)
    >[faktor] (2*)
    >[aggregatzustand] (g)
    >[bildungsenthalpie] bekomm ich aus ner MySQL DB
    >[standartentropie] bekomm ich aus ner MySQL DB
    [stoff2]
    >[name]
    >...
    )

    Erst trenne ich den String am + mit explode. Damit bekomm ich die einzelnen Stoffe.
    Dann will ich aber den String folgendermaßen aufteilen (kleines Beispiel):
    2 C2H6 (g). D.h ich muesste nach dem * und bei der Klammer trennen.
    Aber wie geht das mit einmal? Gibt es eine Funktion bei der ich meherere Trennzeichen eingeben kann? preg_split scheint diese Möglichkeit zu haben aber ich hab schon im php-manual nachgeschaut und nicht wirklich verstanden wie die Funktion strings trennt. Am Schluss will ich ein Array rausbekommen wie oben gezeigt.

    mfg
    Tischler

  • #2
    preg_match_all() würde eher passen, denke ich.

    hab so etwas auf die schnelle versucht:
    Code:
    /(\d)(\*)(.*)\(.*/isU
    schau dir das ergebnis-array an.

    Kommentar


    • #3
      Danke für deine Antwort. Mit deiner Version hast du mir sehr geholfen.

      Was du da mit einer Zeile gemacht hast hab ich mit 4 Zeilen und einer Schleife gemacht.

      mfg
      Tischler

      Kommentar

      Lädt...
      X