Pourquoi ne pas opérer une sélection multiple?Pourquoi ne fonctionne pas la sélection multiple?
Je dois obtenir tous les nombres d'une chaîne.
Pattern pattern = Pattern.compile("(([1-9]\\d*(\\.|\\,)\\d*)|0{1}(\\.|\\,)\\d*|(\\.|\\,)\\d+|([1-9]\\d*|0{1}))");
Matcher matcher = pattern.matcher(text);
boolean matches = matcher.matches();
log.info("matches: {}", matches);
if (matches) {
log.info("matches value: {}", text);
} else {
while (matcher.find()) {
String value = matcher.group();
log.info("value: {}", value);
}
}
Lorsque texte variable est égale à "111 222" il fonctionne (111222), mais si je mets "111 222" (sans premier espace blanc) n'obtenir (222).
J'ai vérifié sur regex101.com (avec g drapeau) et le modèle fonctionne comme prévu.
je reçois 111 et 222, avec ou sans espace au début, avec votre code! –
S'il vous plaît, essayez de mettre à jour la version du code – rdm
vous donne quasiment la solution –