[英]C# Regex for at least one letter and at least one number
我正在嘗試檢查密碼是否至少包含一個字母和數字。 跟隨似乎沒有用。
密碼可以是“ tester1”或“ 11111111t”等。
不能全是字母或全數字。
有任何想法嗎?
const string pattern = @"/[a-z].*\d|\d.*[a-z]/";
var match = Regex.Match(password, pattern);
解決了:
var rule1 = password.Any(char.IsLetter);
var rule2 = password.Any(char.IsNumber);
這也很好:
const string pattern = @"[a-z].*\d|\d.*[a-z]";
除了使用正則表達式外,我將使用更易於維護的簡單規則。 例如:
var rule1 = str.All(char.IsLetter);
var rule2 = str.All(char.IsNumber);
您可以通過char.IsLower
, char.IsUpper
等豐富規則。
這是一個
((.*\d.*[a-zA-Z].*)|(.*[a-zA-Z].*\d.*))
模式的斜線用於具有正則表達式文字的語言中。 C#沒有。
從模式中刪除斜杠:
const string pattern = @"[a-z].*\d|\d.*[a-z]";
正則表達式,用於至少一個大寫字母,一個小寫字母,一個數字,一個特殊字符和至少8個字符的長度:
^(?=.*[az])(?=.*[AZ])(?=.*[0-9])(?=.*[^a-zA-Z0-9 :])(?=.{8,})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.