在regex.replace中忽略区分大小写?

时间:2011-01-19 16:10:29

标签: c# regex search replace case-sensitive

我有这个代码来搜索字符串并用其他文本替换一些文本:

Regex regexText = new Regex(textToReplace);
retval = regexText.Replace(retval, Newtext);

textToReplace可能是“欢迎”或“客户”或任何其他内容。

我想忽略textToReplace的情况,以便“欢迎”和“欢迎”都匹配。

我该怎么做?

3 个答案:

答案 0 :(得分:16)

您可以尝试:

Regex regexText = new Regex(textToReplace, RegexOptions.IgnoreCase);

答案 1 :(得分:13)

您只需传递选项RegexOptions.IgnoreCase,如下所示:

Regex regexText = new Regex(textToReplace, RegexOptions.IgnoreCase);
retval = regexText.Replace(retval, Newtext);

或者,如果您愿意,可以将选项直接传递给Replace method

retval = Regex.Replace(retval, textToReplace, Newtext, RegexOptions.IgnoreCase);

RegexOptions documentation page提供了可以为正则表达式设置的可用选项列表。

答案 2 :(得分:1)

有一个Regex.Replace overloadRegexOptions。这些选项包括IgnoreCase值。