Во-первых, извините за примитивный вопрос, мне интересно, как приведенный ниже метод возвращает true
Pattern.compile("([0-9]{15})").asPredicate().test("ababx300000055773908")
Пожалуйста, дайте мне знать, если я что-то здесь упускаю.
Вы должны определить начало и конец строки, чтобы соответствовать. ваш шаблон соответствует 15-кратному количеству c во всей строке без учета местоположения шаблона. используйте регулярное выражение ^ [0-9] {15} $
Pattern.compile("(^[0-9]{15}$)").asPredicate().test("ababx300000055773908");