Bonjour, je n'arrive pas à trouver le bon Pattern pour retrouver les mots entre guillements dans une chaine. Quelqu'un peut-il m'éclairer ?
Par exemple :J'aimerai récupérer les, et chatsCode:String txt = "bonjour \"les\" gros \"chats\"";
Version imprimable
Bonjour, je n'arrive pas à trouver le bon Pattern pour retrouver les mots entre guillements dans une chaine. Quelqu'un peut-il m'éclairer ?
Par exemple :J'aimerai récupérer les, et chatsCode:String txt = "bonjour \"les\" gros \"chats\"";
Code:
1
2
3
4
5
6
7 String chaine = "bonjour \"les\" gros \"chats\""; String pattern ="\"([^\"]+)\""; Matcher m = Pattern.compile(pattern).matcher(chaine); while(m.find()) { System.out.println(m.group(1)); }
Salut,
:arrow: \\p{Alpha} représente tous les caractères alphabétiques...Code:
1
2
3
4
5
6
7
8 String txt = "bonjour \"les\" gros \"chats\""; Pattern pattern = Pattern.compile("\"(\\p{Alpha}+)\""); Matcher matcher = pattern.matcher(txt); while (matcher.find()) { System.out.println(matcher.group(1)); }
a++
[edit] grilled !
Euh...ça ça me renvoit : les" gros "chats
Merci à vous ça fonctionne !
Plus généralement, pour ne pas se limiter aux caractères alphanumériques, tu peux aussi utiliser :
Code:Pattern pattern = Pattern.compile(".*?");