Java Expression régulière d'une addresse ip
Résolu
Chabanus
Messages postés
982
Date d'inscription
Statut
Membre
Dernière intervention
-
ayudaz Messages postés 21 Statut Membre -
ayudaz Messages postés 21 Statut Membre -
Bonjour,
J'aimerais qu'on me corrige mon expression régulière pour une address ip v4:
#(^[1-2][0-9]{1,2}*/.){3}[1-2][0-9]{1,2}*#
merci
--
Il faut faire partie de la solution et non du problème ;-)
J'aimerais qu'on me corrige mon expression régulière pour une address ip v4:
#(^[1-2][0-9]{1,2}*/.){3}[1-2][0-9]{1,2}*#
merci
--
Il faut faire partie de la solution et non du problème ;-)
Configuration: Windows Vista Firefox 3.0.7
5 réponses
-
J'ai modifier celle de druzy pour accepter 192.192.192.192 par exemple.
Voici l'expression régulière modifié :
^((2[0-5]{2})|(1[0-9]{2})|([1-9][0-9])|([1-9]))\\.(((2[0-5]{2})|(1[0-9]{2})|([1-9][0-9])|([0-9]))\\.){2}((2[0-5]{2})|(1[0-9]{2})|([1-9][0-9])|([0-9]))$ -
Aucune âme charitable ???
J'ai fais un autre essai :
if(!ip.matches("^((((1|2)([0-9]){2}) | ([1-9][0-9]) | [0-9])(\\.)){3}(((1|2)([0-9]){2}) | ([1-9][0-9]) | [0-9])"))
on me dit:
Exception in thread "main" java.util.regex.PatternSyntaxException: Unclosed group near index 101
^((((1|2)([0-9]){2}) || ([1-9][0-9]) || ([0-9]))(\.)){3}(((1|2)([0-9]){2}) || ([1-9][0-9]) || ([0-9])
^
at java.util.regex.Pattern.error(Unknown Source)
laisse tomber.personne.taidera.error(on ne sais jamais :p)
at java.util.regex.Pattern.accept(Unknown Source)
at java.util.regex.Pattern.group0(Unknown Source)
at java.util.regex.Pattern.sequence(Unknown Source)
at java.util.regex.Pattern.expr(Unknown Source)
at java.util.regex.Pattern.compile(Unknown Source)
at java.util.regex.Pattern.<init>(Unknown Source)
at java.util.regex.Pattern.compile(Unknown Source)
at java.util.regex.Pattern.matches(Unknown Source)
at java.lang.String.matches(Unknown Source)
at ip.main(ip.java:12)
si quelqu'un s'y connais en ER ... -
Salut,
Je passais par là par hasard, et étant donné que ta question date de plus de 6 mois, je suppose que tu as du résoudre ton problème depuis le temps.
Sinon voila l'expression que j'utilise pour contrôler une ipv4 :
ip.matches("^([1-9]\\d{0,2}\\.){3}[1-9]\\d{0,2}$")
Désolé de déterrer un sujet aussi vieux, mais si quelqu'un passe par hasard ici, ça peut toujours l'aider. -
Oups en effet, c'est une erreur de ma part.
le plus simple serait :"^(\\d{1,3}\\.){3}\\d{1,3}$"
après bien sûr 325.485.985.423 serais reconnu comme vrai il faudrait affiner.
Là à froid, je ne sais pas comment tu peux le vérifier dans l'expression régulière, mais tu peux faire un split sur le point et vérifier que les valeurs soient inférieures ou égale à 255. -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
ceci marche : "^(([1-2][0-5]{2})|([1-9][0-9])|([1-9]))\\.((([1-2][0-5]{2})|([1-9][0-9])|([0-9]))\\.){2}(([1-2][0-5]{2})|([1-9][0-9])|([0-9]))$"