[英]Regex Pattern - Alphanumeric
[用户名]其中,用户名是仅包含1到12个字符之间的字母数字字符的任何字符串
我的代码:
Regex pat = new Regex(@"\[[a-zA-Z0-9_]{1,12}\]");
MatchCollection matches = pat.Matches(accountFileData);
foreach (Match m in matches)
{
string username = m.Value.Replace("[", "").Replace("]", "");
MessageBox.Show(username);
}
给我一场空白比赛
这可以使您在方括号内命名(匹配项不包含方括号符号):
(?<=\[)[A-Za-z0-9]{1,12}(?=\])
您可以像这样使用它:
Regex pat = new Regex(@"(?<=\[)[A-Za-z0-9]{1,12}(?=\])");
MatchCollection matches = pat.Matches(accountFileData);
foreach (Match m in matches)
{
MessageBox.Show(m.Value);
}
您的括号过多,可能要匹配字符串的开头( ^
)和结尾( $
)。
^[a-zA-Z0-9]{1,12}$
如果期望匹配的字符串中包含方括号,请使用反斜杠将其转义。
\[[a-zA-Z0-9]{1,12}\]
// In C#
new Regex(@"\[[a-zA-Z0-9]{1,12}\]")
您的括号过多。
[a-zA-Z0-9]{1, 12}
如果您要匹配括号,则需要正确地将其转义:
\[[a-zA-Z0-9]{1, 12}\]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.