Wie greifen IP:PORT mit regex?

Ich bin ein kleines IP:PORT-scraper in PHP. Das problem ist, dass ich bin ziemlich vertraut mit RegEx.

Also ich habe seit zusammenstückeln, was ich kann.

Hier ist was ich habe:
/\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?):([0-9]{1,5})\b/

Ich weiß, das ist nicht die beste. Zumindest nicht am Ende greifen Sie den port, weil es bedeutet, dass die ports werden in der Lage sein, Dinge wie 99999.

Also, es scheint zurück zu kehren zwei Spiele in dieser Art und Weise. Die IP:PORT und die PORT. Ich brauche nur zu packen, das volle IP:PORT, nicht das ein oder andere.

  • ist der port nicht alles nach : ?
  • Nein, es werden nur wenige ganze zahlen nach. (1-5 Ganzzahlen)
  • Was bedeuten die input-strings Aussehen? also, wo werden Sie tatsächlich versuchen, Sie zu nehmen aus?
  • verschiedenen Webseiten, in denen die HTML-variiert stark.
  • ...und versuchen Sie zu greifen, Sie aus der vollständigen URLs (wie http://IP:PORT/some/stuff), oder Sie sind nur IP:PORT auf Ihre eigenen? Dazu kommen, wird es immer ein :PORT Abschnitt oder vielleicht einige von Ihnen nur sein IP?
  • Sie sind in der Regel nur alleine, aber vielleicht haben Sie irgendeine Art von HTML-Code direkt vor oder nach. Nicht vollständige URLs in der Regel, wenn es möglich ist. Es IST immer ein : - PORT-Bereich.
  • Sie können versuchen, diese : stackoverflow.com/a/25866412/3767784

InformationsquelleAutor Rob | 2011-12-04
Schreibe einen Kommentar