C # Регулярное выражение - PullRequest
       5

C # Регулярное выражение

2 голосов
/ 30 октября 2010

Я не могу заставить это работать.

Я ищу регулярное выражение, которое подтвердит пароль. Допустимые символы: a-zA-Z0-9, но последовательность должна содержать не менее 1 цифры и 1 заглавной буквы.

Можно ли это сделать?

Ответы [ 4 ]

2 голосов
/ 30 октября 2010
^(?=.*[A-Z])(?=.*[0-9])[A-Za-z0-9]+$

должен сделать.

^             # start of string 
(?=.*[A-Z])   # assert that there is at least one capital letter ahead
(?=.*[0-9])   # assert that there is at least one digit ahead
[A-Za-z0-9]+  # match any number of allowed characters 
              # Use {8,} instead of + to require a minimum length of 8 characters.
$             # end of string
0 голосов
/ 30 октября 2010
bool valid =  
    Regex.IsMatch(password, @"\w+")// add additional allowable characters here
    && Regex.IsMatch(password, @"\d")
    && Regex.IsMatch(password, @"\p{Lu}");
0 голосов
/ 30 октября 2010
0 голосов
/ 30 октября 2010

Вы можете использовать утверждения, не равные нулевой ширине, / 100, * в регулярном выражении.Например:

^\w*(?=\w*\d)(?=\w*[a-z])(?=\w*[A-Z])\w*$

Требуется, чтобы существовало хотя бы одно число, одна строчная и одна заглавная буква.Использование \w позволяет вам принимать неанглийские или акцентированные символы (которые вы можете или не можете разрешить).В противном случае используйте вместо этого [a-zA-Z].

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...