Ci sono diversi modi.
Innanzitutto immagino tu intenda lavorare con un IPv4.
Puoi utilizzare una espressione regolare, ma risulterebbe piuttosto arduo controllare il range.
Puoi suddividere la stringa in 4 sottostringhe e, per ciascuna, tentare una conversione numerica e verificare che ciascuna sia un valore compreso fra 0 e 255.
Oppure puoi sfruttare il meccanismo delle eccezioni utilizzando la classe InetAddress ed il suo metodo getByName(). Quest'ultimo dovrebbe essere il metodo più rapido, in quanto deleghi alla classe InetAddress l'oneroso compito del parsing:
Ciao.codice:try { InetAddress ia = InetAddress.getByName( tuaStringa ); } catch (Exception e) { // Non rappresenta un IP valido }![]()



Rispondi quotando