как я могу получить 2 алфавита 7 цифр 1 алфавитный формат для строки в регулярных выражениях в .net - PullRequest
0 голосов
/ 24 февраля 2011

Примером формата является aa1231231c

Ответы [ 2 ]

6 голосов
/ 24 февраля 2011

Ну, это выглядит как:

[a-zA-Z]{2}[0-9]{7}[a-zA-Z]

для меня.Конечно, это зависит от того, что вы подразумеваете под «алфавитом» и «цифрой» - вышеизложенное касается только букв и цифр ASCII, без акцентов, без других типов цифр и т. Д.подходы, такие как \d для «любой цифры» и \p{L} для «любой буквы»;если вы действительно только хотите букв и цифр ASCII, я бы использовал вышеприведенное, чтобы сделать очевидным, что именно разрешено.или используйте ^ и $, чтобы ввести его в выражение:

^[a-zA-Z]{2}[0-9]{7}[a-zA-Z]$

Это предотвратит нахождение вашего паттерна в середине другого текста.

2 голосов
/ 24 февраля 2011

Проверяете ли вы всю строку?

Regex myPattern = new Regex(@"^[a-z]{2}\d{7}[a-z]$", RegexOptions.IgnoreCase);

Нет?

Regex myPattern = new Regex(@"[a-z]{2}\d{7}[a-z]", RegexOptions.IgnoreCase);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...