有没有更好的方法来查找C#中是否出现过一个字符串?现在,我正在使用以下声明来实现同样的目标。
Regex.Replace(input, @"[0-9]+([s][t][r][i][n][g])", "$1", RegexOptions.IgnoreCase);
答案 0 :(得分:2)
?
修饰符告诉您只需要出现一次或不出现。所以,如果我理解你的话,你需要像
Regex.Replace(input, @"[0-9]+((?:string)?)", "$1", RegexOptions.IgnoreCase);
在字符串代表非捕获组之前 ?:
,因此内部大括号不会被视为一个组,并且无法通过替换中的.Groups
和$<number>
表达式进行访问
请参阅重复部分。 http://www.regular-expressions.info/quickstart.html
答案 1 :(得分: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);
}