我是新手正則表達式並試圖學習。我的要求是隻考慮一個字符串,如果它只有小字母,絕對沒有別的。 ex:abc,khj,sdfs是有效的單詞,但是Abc,KHJ,123,$ bd無效。C#正則表達式跳過一些特殊字符
我寫一個正則表達式如下:
private bool IsValid(string str)
{
Regex r = new Regex(@"[a-z][^<>%'=\$]");
Console.WriteLine(str + " : " + r.IsMatch(str).ToString());
return r.IsMatch(str);
}
但是,當我通過以下輸入到該方法:
"a<>'b=b"
"abc"
"a$b"
"123"
"IHH"
它被識別abc
爲有效的,但它也識別a$b
和a<>'b=b
作爲有效的單詞! (對於那些返回true
) 我想了解如何跳過a$b
和a<>'b=b ??
該方法應爲它們返回false
。
請幫我理解。
感謝
我正在嘗試這一個,它現在給我的每個輸入「false」。即使對於abc,def等 – Micks 2012-07-22 17:43:05
更正,它的工作原理。我錯誤地傳遞了一個額外的空間作爲該方法的輸入。我修剪它,它的工作。非常感謝。 – Micks 2012-07-22 17:56:43