2012-11-28 97 views
-5

有沒有更好的方法來查找C#中的一個字符串或沒有出現的字符串?現在,我正在使用以下聲明來實現相同。C#正則表達式:一個或沒有出現字符串

Regex.Replace(input, @"[0-9]+([s][t][r][i][n][g])", "$1", RegexOptions.IgnoreCase); 
+3

正則表達式似乎是檢查一個或多個數字,後面跟着'string',這不是你在描述中說的。你想要匹配什麼 - 請提供輸入和預期結果的例子。 – Oded

回答

2

?修改告訴你想要的是一個或沒有出現次數。所以,如果我理解你的權利,你要像

Regex.Replace(input, @"[0-9]+((?:string)?)", "$1", RegexOptions.IgnoreCase); 

?:字符串之前,代表非捕獲組,因此內支架不被視爲一個組,不與替換

.Groups$<number>表達式訪問

請參閱重複部分。 http://www.regular-expressions.info/quickstart.html

0

使用string.contains方法:

string s1 = "The quick brown fox jumps over the lazy dog"; 
string s2 = "fox"; 

if (s1.contains(s2)) 
{ 
Regex.Replace(input, @"[0-9]+([s][t][r][i][n][g])", "$1", RegexOptions.IgnoreCase); 
} 
相關問題