Hi,
folgendes Problem:
Ich hab einen String von einem IRC-Server, nehmen wir mal Folgenden:
Das versuche ich mittels:
Das Ergebnis:
Wie kann ich dafür sorgen das der Index 1 im Array bei diesem String auf jeden Fall
existiert ABER leer bleibt. Im Index 2 soll dann ERROR stehen.
Sinn ist der das ich auch Strings wie:
parsen kann ohne das sich die Indizes verändern wobei hier dann NOTICE im Index 1 steht und AUTH im Index 2.
Ich muss auf jeden Fall irgendwie dafür sorgen das er erkennt das die erste Klammer nur angewant werden darf wenn kein Doppelpunkt danach folgt.
Wenn keiner folgt soll die Klammer dennoch zutreffen ABER ein leeres Ergebnis liefern sodass der Index 1 im Array dann eben leer ist.
Gruß - Marcel
folgendes Problem:
Ich hab einen String von einem IRC-Server, nehmen wir mal Folgenden:
Den möchte ich nun in dieses Format bringen:ERROR :Your host is trying to (re)connect too fast -- throttled
Code:
Array
(
[0] => ERROR :Your host is trying to (re)connect too fast -- throttled
[1] =>
[2] => ERROR
[3] => Your host is trying to (re)connect too fast -- throttled
)
Das versuche ich mittels:
PHP:
$regx_src = '/(\S*)(\S+)\s+:(.*)/';
$row = 'ERROR :Your host is trying to (re)connect too fast -- throttled';
preg_match($regx_src, $row, $match)
print_r($match);
Das Ergebnis:
Code:
Array
(
[0] => ERROR :Your host is trying to (re)connect too fast -- throttled
[1] => ERRO
[2] => R
[3] => Your host is trying to (re)connect too fast -- throttled
)
Wie kann ich dafür sorgen das der Index 1 im Array bei diesem String auf jeden Fall
existiert ABER leer bleibt. Im Index 2 soll dann ERROR stehen.
Sinn ist der das ich auch Strings wie:
Code:
NOTICE AUTH :*** Found your hostname
Ich muss auf jeden Fall irgendwie dafür sorgen das er erkennt das die erste Klammer nur angewant werden darf wenn kein Doppelpunkt danach folgt.
Wenn keiner folgt soll die Klammer dennoch zutreffen ABER ein leeres Ergebnis liefern sodass der Index 1 im Array dann eben leer ist.
Gruß - Marcel
Zuletzt bearbeitet: