Laden...

[gelöst] (k)ein Lösungsansatz für RegEx Pattern: Anzahl von IP-Adressen in String zählen

Erstellt von Trekki1990 vor 14 Jahren Letzter Beitrag vor 14 Jahren 947 Views
Trekki1990 Themenstarter:in
503 Beiträge seit 2008
vor 14 Jahren
[gelöst] (k)ein Lösungsansatz für RegEx Pattern: Anzahl von IP-Adressen in String zählen

Hallo liebe Community!

Ich wälze jetzt nun schon stundenlang RegEx Tutorials und habe mit dem RegEx Tester von herbivore rumgebastelt, aber irgendwie komm ich nicht auf einen grünen Zweig.

Folgendes Problem:


var table = new Array(
 '192.168.1.152','00:1D:60:18:C3:D8'
,'192.168.1.151','00:00:00:00:00:00'

);

Dies ist ein Stück eines Strings den ich überprüfen muss.
Ich weiß nicht ob es überhaupt möglich ist, aber ich muss
anhand der Anzahl der IPs eine Anzahl herausbekommen.
Also wenn 1 IP vorhanden ist --> 1,
wenn 2 IPs vorhanden sind --> 2 usw.

Meistens steht dort bloß eine Adresse.
Es kann aber auch vorkommen dass dort mehrere drin stehen.
Also verändert sich die Länge.

Ich find echt keine Lösung. Ich hoffe es erbarmt sich einer der mir hilft X(
Mir raucht schon der Kopf...

Ich bedank mich schonmal im Voraus...

Gruß Trekki

2.760 Beiträge seit 2006
vor 14 Jahren

Warum nicht einfach die Array deklaration entfernen und ein string.Split am Komma?

799 Beiträge seit 2007
vor 14 Jahren

Oder du definierst deinen Pattern so, dass er nur auf IPs anspringt und nimmst dann die Anzahl der Matches.

As a man thinketh in his heart, so he is.

  • Jun Fan
    Es gibt nichts Gutes, außer man tut es.
  • Erich Kästner
    Krawutzi-Kaputzi
  • Kasperl
Trekki1990 Themenstarter:in
503 Beiträge seit 2008
vor 14 Jahren

Vielen Dank für eure Antworten!

Die Idee von der-schlingel klingt nicht schlecht, werd ich mal probieren 👍

Trekki1990 Themenstarter:in
503 Beiträge seit 2008
vor 14 Jahren

So ich habe jetzt eine RegEx Pattern... (mit MAC)

@"'([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3})'," + @"'[0-9A-F][0-9A-F][:][0-9A-F][0-9A-F][:][0-9A-F][0-9A-F][:][0-9A-F][0-9A-F][:][0-9A-F][0-9A-F][:][0-9A-F][0-9A-F]'"

Dann habe ich bloß noch die Anzahl der Matches ausgewertet und schon hatte ich die Anzahl der IPs.

Nach folgendem Sting wird gesucht:

'192.168.1.1','00:12:3A:21:12:2E:7D'

int result = findeIPsRegEx.Matches(dataArray[i, 3]).Count;

Danke nochmal für eure Lösungsansätze!

Gruß Trekki