1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
String[] patterns = {"([b\\.][r\\.][o\\.][s\\.])",
"([b\\.][r\\.][o\\.][c\\.])",
"([b\\.][a\\.][l\\.][l\\.][o\\.][n\\.])",
"([b\\.][a\\.][l\\.][l\\.][o\\.][n\\.][s\\.])"};
String line = ".br.c.....ba....";
for (String pattern : patterns) {
Pattern p = Pattern.compile(pattern);
Matcher m = p.matcher(line);
if (m.find()){
if (m.groupCount() > 0){
for (int i = 1; i <= m.groupCount(); i++) {
// Mais reste le probleme des mots uniquement composes de points...
if (m.group(i).replaceAll("\\.", "").length() > 0){
System.out.println("pattern "+pattern+" "+m.group(i)+", start: "+m.start(i)+", end: "+m.end(i));
}
}
}
}
} |
Partager