簡體   English   中英

C#正則表達式中的無效字符

[英]C# Regex for invalid characters

嗨,我有一個要求驗證輸入只能接受字母數字,-,_的要求。要對此進行測試,我正在使用以下代碼

 string pattern = @"[^a-z A-Z 0-9._-]$";
        var matches = Regex.Matches(m_ModelName.Value, pattern, RegexOptions.IgnoreCase);
        return (matches.Count > 0);

如果計數> 0,則表示存在無效字符。 但是它永遠不會按照我的期望返回。 請告訴我我在做什么錯。 這是嚴格的C#

string pattern = @"[^a-z A-Z 0-9._-]$";

此正則表達式僅匹配字符串中的最后一個字符(由於$錨)。

您可能想要類似的東西:

 string pattern = @"^[a-zA-Z0-9._-]+$";
 return Regex.IsMatch(m_ModelName.Value, pattern, RegexOptions.IgnoreCase);

您也可以查看\\w字符類。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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