import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "(?xm)\n"
+ "(?:\\s|^)\n"
+ "([-+]?(?:\\b\\d+\\.\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?)\n"
+ "(?=\\s|$)";
final String string = "0.2 2.1 3.1 ab 3 c abc23\n"
+ "4534.34534345\n"
+ ".456456\n"
+ "1.\n"
+ "1e545\n"
+ "1.1e435ff\n"
+ ".1e232\n"
+ "1.e343\n"
+ "1231ggg\n"
+ "112E+12\n"
+ "4\n"
+ "5545ggg\n"
+ "dfgdf.5444\n"
+ "12312.1231\n"
+ ".1231\n"
+ "1231\n"
+ "1.wrr\n"
+ "1 34345 234 -121\n"
+ "177\n"
+ "-1e+ -1e+0 1e-1";
final Pattern pattern = Pattern.compile(regex);
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