Код: Выделить всё
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main {
public static void main(String args[]) {
String pageText = "Other Strings 9.5.1 My Other Strings";
String pageText2 = "Other Strings 9.3.1.1.1 My Other Strings";
Pattern anyServicePattern = Pattern.compile("(\\d+\\.){2}[0-9]\\s+[a-zA-Z]+");
Matcher anyServiceMatcher = anyServicePattern.matcher(pageText);
if (anyServiceMatcher.find()) {
System.out.println("Found");
} else {
System.out.println("Not Found");
}
Matcher anyServiceMatcher2 = anyServicePattern.matcher(pageText2);
if (anyServiceMatcher2.find()) {
System.out.println("Found");
} else {
System.out.println("Not Found");
}
}
}
Найдено
Найдено
Я хочу, чтобы он напечатался
Найдено
Не найдено
т.е. Я хочу, чтобы регулярное выражение соответствовало шаблону Я перепробовал множество комбинаций, но, к моему большому удивлению, не смог их взломать. Какое выражение правильное?
Вот ссылка на jdoodle: https://www.jdoodle.com/ia/14IW
Подробнее здесь: https://stackoverflow.com/questions/787 ... l-use-case