Регулярное выражение для номера телефона и исключая десятичные числа
Я использую это регулярное выражение для распознавания телефонных номеров в моем приложении. "\\+?\\d{7,23}" Но это не может исключать десятичные числа, такие как 3.1415926。
Как изменить это регулярное выражение, чтобы оно могло распознавать телефонные номера и не давать мне десятичные числа, такие как 3.1415926, 99.9999999。
В этом случае "1415926" и "9999999" будут распознаны как телефонный номер, что нежелательно.
Одним словом, я хочу отклонить цифры с помощью "." быть частично распознанным как номер телефона. Или номер телефона не должен быть заменен на "." или следуйте "."
Благодарю.
1 ответ
Решение
Попробуйте это регулярное выражение:
^\+?((?!\.)\d){7,23}$
Объяснение:
\+ string starts with an optional +
((?!\.)\d){7,23} negative lookahead asserts that string contains between 7 and 23
numbers, each of which is not a dot
Демо здесь: