Java Expression régulière d'une addresse ip
Résolu
Chabanus
Messages postés
978
Date d'inscription
Statut
Membre
Dernière intervention
-
ayudaz Messages postés 20 Date d'inscription Statut Membre Dernière intervention -
ayudaz Messages postés 20 Date d'inscription Statut Membre Dernière intervention -
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
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
A voir également:
- Expression régulière adresse ip
- Ethernet n'a pas de configuration ip valide - Guide
- Comment connaître son adresse ip - Guide
- Darkino nouvelle adresse - Guide
- Adresse mac - Guide
- Adresse ip - Guide
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]))$
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 ...
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 :
Désolé de déterrer un sujet aussi vieux, mais si quelqu'un passe par hasard ici, ça peut toujours l'aider.
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 :
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.
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