Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di Sammy73
    Registrato dal
    May 2001
    Messaggi
    412

    [VB] regExp per controllare un IP

    qualcuno mi può aiutare a fare una espressione di controllo per controllare se un indirizzo IP[:PORTA] è valido?

    deve controllare se eventualmete c'è una porta, se è un numero e se ce ne è una sola...

    un po' complicato per me

    non so se si può fare...

    GRAZIE fin da subito!
    Pesa più un litro d'acqua o uno d'olio...?
    La prima persona al mondo a finire Splinter Cell uccidendo solo una persona. Già che c'ero l'ho fatto anche in Splinter Cell 2: solo 5 UCCISIONI
    .*zerOKilled*.

  2. #2
    Utente di HTML.it L'avatar di Sammy73
    Registrato dal
    May 2001
    Messaggi
    412
    ho trovato qualcosa del genere, ma non è vbscript:
    codice:
    my $IP = '1.5.0.1';
    
    print check_IP($IP)?'ok':'oops',"\n";
    
    sub check_IP {
    my $str = shift;
    my $lower = 1;
    my $upper = 255;
    if (my @pieces = $str =~ /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/) {
    return ! scalar grep { $_ < $lower || $upper < $_ } @pieces;
    }
    else {
    return 0;
    }
    }
    Pesa più un litro d'acqua o uno d'olio...?
    La prima persona al mondo a finire Splinter Cell uccidendo solo una persona. Già che c'ero l'ho fatto anche in Splinter Cell 2: solo 5 UCCISIONI
    .*zerOKilled*.

  3. #3
    ma il controllo lo devi fare su una pagina asp o è una funzione in una dll?? se su di una pagina asp lo script che hai trovato va benissimo poichè è javascript ...
    se non è bello ciò che è bello figuriamoci ciò che è brutto!!



    fai anche tu come me: indenta il codice!!!!

  4. #4
    Utente di HTML.it L'avatar di Sammy73
    Registrato dal
    May 2001
    Messaggi
    412
    è in una pagina asp, ma non va bene, perchè il resto della pagina è in VBscript

    (PS: ma lo script postato non è mica PHP?(vebbè, sono molto simili, basta togliere $))
    Pesa più un litro d'acqua o uno d'olio...?
    La prima persona al mondo a finire Splinter Cell uccidendo solo una persona. Già che c'ero l'ho fatto anche in Splinter Cell 2: solo 5 UCCISIONI
    .*zerOKilled*.

  5. #5
    mi sa che hai ragione!!! ehehehehhehe

    comuqneu è troppo anche per me ...
    se non è bello ciò che è bello figuriamoci ciò che è brutto!!



    fai anche tu come me: indenta il codice!!!!

  6. #6
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    Ciao Sammy73,

    la re che hai trovato non è proprio buona perché i numeri accettati superano i 255, ad esempio da per buono un indirizzo ip come 999.999.999.999
    per aggiungere il controllo della porta a quello basterebbe un (\:\d+)? finale
    codice:
    Set RE = CreateObject("VBScript.RegExp")
    RE.Pattern="^(\d{1,3}\.){3}\d{1,3}(\:\d+)?$"
    RE.Global=true
    stringa = "100.100.100.100:100" 'questa passa
    Response.Write stringa & " = " & RE.Test(stringa) & "
    "
    stringa = "999.999.999.999:999" 'questa passa
    Response.Write stringa & " = " & RE.Test(stringa)
    ma per controllare che l'ip non superi i 255
    codice:
    Set RE = CreateObject("VBScript.RegExp")
    RE.Pattern="^((25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)\.){3}(25[0-5]|2[0-4]\d|[01]\d\d|\d?\d)(\:\d+)?$"
    RE.Global=true
    stringa = "100.100.100.100:100" 'questa passa
    Response.Write stringa & " = " & RE.Test(stringa) & "
    "
    stringa = "999.999.999.999:999" 'questa NON passa
    Response.Write stringa & " = " & RE.Test(stringa)
    Se servono chiarimenti chiedi pure
    Ciao ciao

  7. #7
    figata!!!
    se non è bello ciò che è bello figuriamoci ciò che è brutto!!



    fai anche tu come me: indenta il codice!!!!

  8. #8
    Utente di HTML.it L'avatar di Sammy73
    Registrato dal
    May 2001
    Messaggi
    412
    MEGA GRAZIE!

    che roba ragazzi! lo provo subito

    grazie ancora willybit
    Pesa più un litro d'acqua o uno d'olio...?
    La prima persona al mondo a finire Splinter Cell uccidendo solo una persona. Già che c'ero l'ho fatto anche in Splinter Cell 2: solo 5 UCCISIONI
    .*zerOKilled*.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.