爲什麼下面的代碼插入一個項目到groupCollection,即使「aaa」不包含12行數字?正則表達式不起作用
var groupCollection = Regex.Match("aaa", "\\d{12}").Groups
我試圖檢查一個字符串包含在這樣的排12位:
_def_201208141238_aaaa
爲什麼下面的代碼插入一個項目到groupCollection,即使「aaa」不包含12行數字?正則表達式不起作用
var groupCollection = Regex.Match("aaa", "\\d{12}").Groups
我試圖檢查一個字符串包含在這樣的排12位:
_def_201208141238_aaaa
var match=Regex.Match("_def_201208141238_aaaa", "\\d{12}");
if(match.Success)
{
// string contains 12 digits in a row
}
的Match
方法總是需要返回的東西。並返回值爲success
的匹配對象false
。我想你想用Matches
並得到MatchCollection
。在這種情況下,你應該得到0個匹配。
// Option 1
// If you are sure there could be only one match then you can check this boolean flag.
var isSuccess = Regex.IsMatch("aaa", "\\d{12}");
// Option 2
// There could be multiple matches.
var matchCollection = Regex.Matches("aaa", "\\d{12}");
foreach (Match m in matchCollection)
{
// Process your code for each match
}
您可以使用Match.Success檢查正則表達式是否匹配。 – Dirk 2013-04-21 07:51:28