簡體   English   中英

正則表達式模式-字母數字

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM