Я искал всю страницу Google, чтобы найти способы проверить, является ли номер телефона румынским, но не нашел ничего, что мне помогло ... Я хочу валидатор Regex для следующих чисел формата :Regex соответствует всем номерам румынских телефонов
074xxxxxxx
075xxxxxxx
076xxxxxxx
078xxxxxxx
072xxxxxxx
077xxxxxxx
0251xxxxxx
0351xxxxxx
Это регулярное выражение, которое я сделал, но он не работает:
{ "Romania", new Regex("(/^(?:(?:(?:00\\s?|\\+)40\\s?|0)(?:7\\d{2}\\s?\\d{3}\\s?\\d{3}|(21|31)\\d{1}\\s?\\d{3}\\s?\\d{3}|((2|3)[3-7]\\d{1})\\s?\\d$)")}
он не проверяет правильный формат номера.
Подробнее:
Если номер начинается с отличными от первоначальных, что я добавил, то это число не является действительным.
Х должен содержать любое количество, но не должна быть такой же number..like 0000000 1111111 т.д.
Он также может иметь следующий формат (но не обязательно): (072) XXXXXXX
Есть ли способ сделать это?
Я хочу реализовать это, чтобы сохранить эти цифры в базе данных и проверить, является ли их формат румынским. Это код, где мне нужно, чтобы добавить выражение регулярное выражение ... должно быть новый Regex под названием «румынский»
static IDictionary<string, Regex> countryRegex = new Dictionary<string, Regex>()
{
{ "USA", new Regex("^[2-9]\\d{2}-\\d{3}-\\d{4}$")},
{ "UK", new Regex("(^1300\\d{6}$)|(^1800|1900|1902\\d{6}$)|(^0[2|3|7|8]{1}[0-9]{8}$)|(^13\\d{4}$)|(^04\\d{2,3}\\d{6}$)")},
{ "Netherlands", new Regex("(^\\+[0-9]{2}|^\\+[0-9]{2}\\(0\\)|^\\(\\+[0-9]{2}\\)\\(0\\)|^00[0-9]{2}|^0)([0-9]{9}$|[0-9\\-\\s]{10}$)")},
};
Вашего определение не достаточно ясно. Нужны ли жестко закодированные префиксы, которые вы указали, явно? Вы разрешаете определенные специальные символы? Вы пытаетесь вытащить только цифры, чтобы вы могли хранить только эти числа в базе данных? –
Извините, я обновил описание. Было бы здорово, если бы я мог позволить ему «()» и «-» отделять числа – Valip
Зачем использовать регулярное выражение? Вы можете просто проверить строки вручную и сэкономить всю эту боль. Regex не всегда является лучшим решением. –