Bonjour j'ai un petit problème au niveau des expressions régulières. J'essaye de renvoyer une chaine de caractère qui serait de cette forme là : <123456789@monentreprise.fr> pour cela je fais cette méthode :
le problème c'est que ça me renvoit la chose suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 package toto; import java.util.regex.Matcher; import java.util.regex.Pattern; public class TestRegexp { /** * @param args */ public static void main(String[] args) { Pattern pattern; Matcher matcher; String passwdEncrypted; pattern = Pattern.compile("^<*>$"); matcher = pattern.matcher("+OK bonjour <12356@monentreprise.com>"); passwdEncrypted = matcher.group(); System.out.println(passwdEncrypted); } }
Est ce que quelqu'un pourrait me dire ce qui cloche s'il vous plait ? car normalement si j'ai bien compris le caractère ^ représente le début de chaine, donc je recherche bien le < en premier, ensuite l'étoile représente n'importe quel nombre de caractère et je referme avec le > en précisant le $ pour dire que c'est la fin.Exception in thread "main" java.lang.IllegalStateException: No match found
at java.util.regex.Matcher.group(Matcher.java:461)
at java.util.regex.Matcher.group(Matcher.java:421)
at toto.TestRegexp.main(TestRegexp.java:19)
Merci de votre aide.
Partager