Ich versuche PHP split() zu verwenden (preg_split() ist auch eine Option, wenn Ihre Antwort damit arbeitet), eine Zeichenfolge auf 2 oder mehr \r\n
zu teilen. Mein aktueller Aufwand ist:Regex mit mehreren Zeilenumbrüchen in Folge
split("(\r\n){2,}",$nb);
Das Problem dabei ist es jedes Mal passt es 2 oder 3 \r\n
‚s, dann geht weiter und findet die nächste. Dies ist bei 4 oder mehr \r\n
unwirksam.
Ich brauche alle Instanzen von zwei oder mehr \r\n
's gleich behandelt werden wie zwei \r\n
' s. Zum Beispiel würde ich brauche
Hello\r\n\r\nMy\r\n\r\n\r\n\r\n\r\n\r\nName is\r\nShadow
zu
werdenarray('Hello','My','Name is\r\nShadow');
ja, weil pcre standardmäßig "gierig" arbeitet, d. H. {2,} versucht so viele Zeichen wie möglich abzugleichen, während split() den Mustervergleich abbricht, sobald dieser erfüllt ist. – chendral
Es hat damit nicht gemacht, aber ich habe das Flag PREG_SPLIT_NO_EMPTY gefunden, das dasselbe für meine Zwecke erreicht. –
@chendral: Hm ... @ Gumbo's Antwort scheint etwas anderes zu bedeuten. – Tomalak