Я пытаюсь изучить регулярные выражения для проверки конкретных входных данных. Входы, которые я пытаюсь проверить, состоят из следующих шаблонов:Проверка различных шаблонов
Регулярное выражение, соответствующее следующему образцу телефонных номеров, который может содержать .
или -
или пробел. Мои данные выглядит следующим образом:
num: 1234567890 name: jack
num: 123-456-7890 name: john
num: 123.456.7890 name: jeff
num: 123 456 7890 name: josh
num: (123) 456-7890 name: jacob
Регулярное выражение для сопоставления номера социального страхования, которые могут включать в себя дефис или пробелы между 3-й и 5-й разряд.
ss: 111111111 name: jack
ss: 111-11-1111 name: john
ss: 111 11 1111 name: jeff
Я пробовал \d{3}-?.?\d{3}-?.?\d{4}
по телефонам.
И попробовал \d{3}-?\d{2}-?\d{4}
для номеров социального страхования.
'.' должно быть экранировано в регулярном выражении. Кроме того, если вы поместите его в класс символов. Например, класс символов, который разделяет цифры, может быть '[.-]'. –
@ArnaudDenoyelle: Это недопустимый класс символов. Обратите внимание, что '-' имеет особое значение ... – Bergi
Почему это неправильно?Посмотрите на ответ Сэмни. Это то, что он использовал, и он работает. –