Extraktion von IP-Adressen aus Text

PHP Medium regex

Aufgabe «Extraktion von IP-Adressen aus Text»

Schreiben Sie ein PHP-Programm, das Zeilen von der Standardeingabe liest und daraus alle gültigen IPv4-Adressen extrahiert. Eine IP-Adresse besteht aus vier Zahlen von 0 bis 255, die durch Punkte getrennt sind. Führende Nullen sind nicht erlaubt, es sei denn, die Zahl ist 0. Die Adressen können von Leerzeichen oder Satzzeichen umgeben sein. Geben Sie jede gefundene Adresse in einer separaten Zeile in der Reihenfolge ihres Auftretens im Text aus. Wenn keine Adressen gefunden werden, geben Sie eine leere Zeile aus.

Eingabeformat

Mehrere Textzeilen, jede mit einer Länge von bis zu 1000 Zeichen. Die Gesamtzahl der Zeilen überschreitet 100 nicht.

Ausgabeformat

Jede gefundene IPv4-Adresse in einer separaten Zeile in der Reihenfolge ihres Auftretens. Wenn keine Adressen vorhanden sind, geben Sie eine leere Zeile aus.

Beispiele

Beispiel 1

EINGABE
Connect to 172.16.0.1 and 192.168.0.255
AUSGABE
172.16.0.1 192.168.0.255

Beispiel 2

EINGABE
Invalid addresses: 256.1.2.3, 1.2.3.4.5, 0.0.0.0
AUSGABE
0.0.0.0

Beispiel 3

EINGABE
Invalid: 999.1.2.3 but valid: 1.2.3.4
AUSGABE
1.2.3.4

Beispiel 4

EINGABE
No addresses here!
AUSGABE
main.php