Bonjour
je chercher a extraire Hello World de la String suivante:
"blablabla\nxd\nHello World!\nlol\nblablabla"
donc j'utilise
le code suivant:
1 2 3 4 5
| Pattern MY_PATTERN = Pattern.compile("(xd)(.*)(lol)");
Matcher m = MY_PATTERN.matcher("blablabla\nxd\nHello World!\nlol\nblablabla");
while (m.find()) {
String s = m.group(2);
System.out.println(s); |
et la je n'ai rien en retour
je fais de meme avec cette string a peine differente:
1 2 3 4 5
| Pattern MY_PATTERN = Pattern.compile("(<)(.*)(>)");
Matcher m = MY_PATTERN.matcher("blablabla\nxd\n<Hello World!>\nlol\nblablabla");
while (m.find()) {
String s = m.group(2);
System.out.println(s); |
et la miracle j'ai bien Hello World!
je souhaiterai comprendre pourquoi ca ne marche que dans le 2eme cas avec les <>
j'avais essayé avec "(.*xd)(.*)(.*lol)" initialement mais ca ne marche pas
j'ai cette version de java
java version "1.7.0_25"
OpenJDK Runtime Environment (fedora-2.3.12.1.fc17-i386)
OpenJDK Server VM (build 23.7-b01, mixed mode)
Partager