[REGEX] splitten mit ausnahme

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

  • [REGEX] splitten mit ausnahme

    hallo zusammen.

    ich habe nun folgenden regex-ausdruck

    PHP-Code:
    $split preg_split("/[\s]+/"$words, -1PREG_SPLIT_NO_EMPTY); 
    edit: natürlich steht da auch ein backslash vor dem "s" (das forum hats rausgeschmissen)

    wie man erkennt werden also wörter in $words aufgeteil und zwar immer bei leerzeichen umbrüchen etc.

    so wird also:

    $words = "hallo ihr da";

    zu einem array

    $split[0] = "hallo"
    $split[1] = "ihr"
    usw.

    das ist auch alles kein thema. jetzt kommt aber eine ausnahme: wenn ich im string wortgruppen habe (also: "ich 'bin eine wortgruppe'"), dann soll diese gruppe NICHT gesplittet werden.
    zu prüfen ist also: kommt ein " oder ' dann nicht mehr splitten, kommt aber wieder eins dann auch wieder splitten.

    dann soll also eine zeichenkette

    $words = "ich beinhalte 'eine wortgruppe' zum splitten";

    so im array stehen

    $split[0] = "ich";
    $split[1] = "beinhalte";
    $split[2] = "'eine wortgruppe'"; // ist egal ob die ' noch mit drin sind
    $split[3] = "zum";
    $split[4] = "splitten";


    alles klar ??


    ich hoffe ihr wisst mehr als ich

    mfg und danke schonmal
    gerrit

    (ich überprüfe jetzt werder rechtschreibung noch zeichensetzung)

  • #2
    hmm,
    PHP-Code:
    $words "ich beinhalte 'eine wortgruppe' zum splitten, aber mit 'mehr als einer' quotation gehts nicht - doch, geht.";
    print_r($split preg_split("#('.*')|\s+#Uis"$words, -1PREG_SPLIT_NO_EMPTY|PREG_SPLIT_DELIM_CAPTURE)); 
    regexp:
    Code:
    #('.*')|\s+#Uis
    so ungefähr ...
    Die Zeit hat ihre Kinder längst gefressen

    Kommentar


    • #3
      vielen dank @derHund !!!


      klappt gut biher. ist ja einfacher als ich dachte (man denkt manchmal zu kompliziert)

      mfg
      gerrit

      Kommentar

      Lädt...
      X