2012-06-04 5 views
0

У меня есть окно с паролем, которое я собираюсь проверить по шаблону Regex. У меня уже есть два других одинаковых типа функций, которые корректно работают с текстовыми полями без пароля.Проверка шаблона регулярного выражения не работает даже после проверки шаблона

Это моя функция:

public bool CheckPassword(string password) 
{ 
    string patternStrict = @"/^(?=.*[a-zA-Z])(?=.*\d)\S{6,15}$/"; 
    Regex reStrict = new Regex(patternStrict); 
    bool isStrictMatch = reStrict.IsMatch(password); 
    return isStrictMatch; 
} 

и я ввод тест на него так:

Problem.Text = CheckPassword(passwordbox.Text); 

Это site проверил Regex в правильном

В TextBox я есть использование (passwordbox) фильтруется * в качестве символа пароля, и это работает, но мне интересно, является ли это причиной отказа функции?

Я чувствую, что это нечто очевидное, что я пропустил. Ответ должен возвращаться как истинный, но он возвращается как ложный. См. Строку 5 приведенной выше ссылки в качестве тестовой строки, чтобы узнать, работает ли она, а именно тестовую строку, которую я использую, чтобы проверить, работает ли она.

ответ

2

.NET не требуется регулярное выражение разделителя, так что просто удалить ведущий и слэш:

string patternStrict = @"^(?=.*[a-zA-Z])(?=.*\d)\S{6,15}$"; 
+0

Genius, я не могу поверить, что его просто, как всегда. – Adsy2010

Смежные вопросы