import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(droit d'entr[ée]e)\\s?(\\W|du|de|fix[eé] [aà]|[aà]|est de)? (\\d+.\\d+|\\d+\\s\\d+)";
final String string = "[DROIT D'ENTREE]\n\n"
+ "droit d'entrée de 100000 € \n"
+ "droit d'entrée : 100 000€ \n"
+ "droit d'entrée à 150 000 € \n"
+ "droit d'entrée 102000€ \n"
+ "droit d'entrée = 200.000 € \n"
+ "droit d'entrée fixé à 200000 € \n"
+ "droit d'entrée fixé à 200000 EUR\n"
+ "droit d'entrée fixé à 200000 euro\n"
+ "droit d'entrée : nous consulter \n"
+ "Prix droit d'entrée : 230 000 euros net vendeur\n"
+ "droit d'entrée : 100 000 euros HD\n"
+ "Prix droit d'entrée : 26 000 euros honoraires à charge vendeur\n"
+ "droit d'entrée : 100 000 euros FAI\n"
+ "droit d'entrée : 298.000euros honoraires charge vendeur.\n"
+ "la droit d'entrée est de 85 000 euros Hors Honoraires\n"
+ "droit d'entrée de 23 000€ net vendeur\n"
+ "droit d'entrée 62 000 euros\n\n"
+ "[NE PAS PRENDRE EN COMPTE]\n\n"
+ "pas de droit d'entrée\n"
+ "sans droit d'entrée\n"
+ "sans aucun droit d'entrée \n"
+ "aucun droit d'entrée \n"
+ "pas de droit d'entrée \n"
+ "droit d'entrée : néant \n\n\n\n\n\n";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);
final Matcher matcher = pattern.matcher(string);
while (matcher.find()) {
System.out.println("Full match: " + matcher.group(0));
for (int i = 1; i <= matcher.groupCount(); i++) {
System.out.println("Group " + i + ": " + matcher.group(i));
}
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html