Мне трудно найти информацию о регулярных выражениях, и я все еще борюсь с ней.
Допустим, у нас есть это:
0123 4567 8910
В примере есть пробелы но они могут быть -
или ,
или +
или чем-то, что не является числом.
Я пытаюсь получить 10 цифр (или 5 или 11), определяемых по отдельности, игнорируя все остальные символ, отличный от di git.
Использование этого: [0-9] соответствует когда-либо di git, я знаю. Если я сделаю что-то подобное [0-9] {10}, я бы никогда ничего не проверил, так как этот шаблон ищет все 10 цифр, чтобы быть вместе, и мне нужно регулярное выражение, чтобы посчитать эти 10 по одной, независимо от того, отличается ли это от git находится в строке ...
Я работал с этим регулярным выражением: [0-9](?=(?:[^0-9]*[0-9]){4,16}(?![^0-9]*[0-9]))
Дело в том, что это обнаруживает все, кроме последних 4 цифр, а не специфика c 10 Мне нужно ... Любой совет по этому вопросу будет высоко оценен ...
РЕДАКТИРОВАТЬ
Я смог сделать это ... другим способом, Я имею в виду, что я смог оставить 10 непомеченных символов ... Мне нужно сделать опозицию так, как это регулярное выражение работает:
[0-9](?=(?:[^0-9]*[0-9]){10,}(?![^0-9]*[0-9]))
Вот Пример.
Это цель. Используя регулярное выражение, получите 5, 10 или 12 первых символов, таких как это (пример 12 символов):