我怎样才能制作一个正则表达式,让我强制使用强制下划线" _"在一串字符的任何位置。
我最初的正则表达式是:^(?=.*\d)(?=.*[a-zA-Z])[a-zA-Z0-9]{1,5}$
这意味着:大小写字母和小数位数。我试图像这样逃避下划线:\ _
匹配的条件是: 必填:大写字母,小写字母,下划线" _" 可选:数字(十进制数字)
样本匹配字符串:
_Hola
H_o1a
Ho_l3
H0l_a
HOLA _
答案 0 :(得分:0)
public static bool TryMatchWithRegex(string txt, out string result)
{
result = string.Empty;
// Mandatory= underscore, lowercase, uppercase
string pattern = @"^(?=.*_)(?=.*[a-z])(?=.*[A-Z]).*$";
Regex regex = new Regex(pattern, RegexOptions.None);
Match match = regex.Match(txt);
if (match.Success)
{
result = match.Value;
return true;
}
return false;
}