[.NET] VB6 IP-Filter

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von Radiergimmy, 10. Dezember 2009 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  1. #1 10. Dezember 2009
    VB6 IP-Filter

    hey ich hab schon lang nix mehr programmiert und frag mich grad wie ich aus ner Textdatei alle ips der reihe nach auslesen kann, nur die ips, den rest einfach weglassen.
    ein bsp dafür wäre:
    Code:
    88.191.1.0 - 88.191.2.255 FR-DEDIBOX Dedibox SAS FR
    88.191.3.0 - 88.191.248.255 FR-DEDIBOX Dedibox SAS FR
    88.191.3.0 - 88.191.129.255 FR-DEDIBOX Dedibox SAS FR
    und im programm soll dann ne textbox mit folgender ausgabe erscheinen:
    Code:
    88.191.1.0
    88.191.2.255
    88.191.3.0
    88.191.248.255
    88.191.3.0
    88.191.129.255
    So ein Tool gabs hier mal in Delphi, aber ich hätts gern in VB6.

    mfg Radiergimmy
     

  2. Anzeige
    Heute: Deals & Sale mit stark reduzierten Angeboten finden.
  3. #2 10. Dezember 2009
    AW: VB6 IP-Filter

    split mit chr(13,10) -> array1
    durchlaufen und jeweils alles abschneiden beginngend ab chr(9)
    dann wieder splitten mit chr(45) -> array2
    wennde dann array2(0) und array2(1) getrimt ausgibst haste deine ips
     
  4. #3 10. Dezember 2009
    AW: VB6 IP-Filter

    Falls du es als bash-snippet haben willst:
    Code:
    pyro@inagua:~ $ cat file.txt 
    88.191.1.0 - 88.191.2.255 FR-DEDIBOX Dedibox SASFR
    88.191.3.0 - 88.191.248.255 FR-DEDIBOX Dedibox SASFR
    88.191.3.0 - 88.191.129.255 FR-DEDIBOX Dedibox SASFR
    pyro@inagua:~ $ awk -F '\t' '{ print $1 }' file.txt | awk -F ' - ' '{ print $1 "\n" $2}'
    88.191.1.0
    88.191.2.255
    88.191.3.0
    88.191.248.255
    88.191.3.0
    88.191.129.255
    awk gibts übrigens auch für windows..

    edit: oh sry, hab grad gelesen, dass du wissen willst, wie dus selber programmieren kannst ^^
    ich würde das ganze zeilenweise einlesen, dann in jeder zeile den string bis zum Tabzeichen (\t) abtrennen und danach den string bis zum "-" ermitteln und dann vom "-" bis zum Ende.
     
  5. #4 10. Dezember 2009
  6. #5 11. Dezember 2009
    AW: VB6 IP-Filter

    Regular Expressions in Visual Basic 6 - VB RegExp

    Kann dir nur empfehlen dich mit regulären Ausrücken auseinander zu setzen. Es lohnt sich und dann kannst du auch ganz anderen ranges extrahieren und nicht nur immer welche im gleichen Format!

    greez
     
  7. #6 12. Dezember 2009
    AW: VB6 IP-Filter

    jo danke, is gut wenn man nich nur nach dem standard prinzip vorgeht sondern auch allgemein die ips rausfiltern kann.
     
  8. #7 12. Dezember 2009
    Zuletzt von einem Moderator bearbeitet: 14. April 2017
    AW: VB6 IP-Filter

    Ich wollte mal schauen ob ich noch vb6 kann^^ Das hier ist sehr "generic" und sollte eigentlich immer funktionieren ohne regex :p

    No File | xup.in

    source:
    Code:
    Dim inhalt As String
    
    Dim zeile() As String
    Dim leerzeile() As String
    Dim ip() As String
    
    
    inhalt = Text1.text
    Text1.text = ""
    
    'Tabs entfernen
    inhalt = Replace(inhalt, Chr(9), " ")
    
    
    zeile = Split(inhalt, vbNewLine)
    
    For i = 0 To UBound(zeile())
    
     leerzeile = Split(zeile(i), " ")
     For s = 0 To UBound(leerzeile()) - 1
     
     
     ip = Split(Trim(leerzeile(s)), ".")
     For ii = 0 To UBound(ip()) - 1
    
     If UBound(ip()) < (ii + 3) Then
     Exit For
     End If
     
     
     If IsNumeric(ip(ii)) = True And IsNumeric(ip(ii + 1)) = True And IsNumeric(ip(ii + 2)) = True And IsNumeric(ip(ii + 3)) = True Then
     Text1.text = Text1.text + ip(ii) + "." + ip(ii + 1) + "." + ip(ii + 2) + "." + ip(ii + 3) & vbNewLine
     End If
    
     Next ii
     
     Next s
    
    Next i
     

  9. Videos zum Thema
Die Seite wird geladen...