我有一個字符串解析。首先,我要檢查,如果一串包含特殊模式:正則表達式尋找特殊模式
- 我想知道是否有與「$啓動子(」 和結束「)」,
- 和那些之間的開始和結束特殊的字符串,不應該有 任何空白空間,
- 它不應該在其中包含「$」字符。
我有一個小的正則表達式在C#
string input = "$(abc)";
string pattern = @"\$\(([^$][^\s]*)\)";
Regex rgx = new Regex(pattern, RegexOptions.IgnoreCase);
MatchCollection matches = rgx.Matches(input);
foreach (var match in matches)
{
Console.WriteLine("value = " + match);
}
它工作在很多情況下,但在輸入= $(A $(),其表達的內部是空的失敗。我想不來什麼是錯的我正則表達式匹配時輸入$()有開始和結束標識符之間沒什麼]
你剛剛使用了'string input =「$()」;'還是你之後放了別的東西? – Jerry 2014-09-26 07:22:15
對不起,失敗的輸入= $($($)$(AND)thereis $是違反我的規則 – 2014-09-26 07:36:46
那麼,你應該合併否定類'[^ $]'和'[^ \ s]' ,我指出了正則表達式的另一個可能的問題,因爲我不知道你的輸入在我的答案中的性質。 – Jerry 2014-09-26 07:38:18