我知道正则表达式的正确性,并认为这是一个很好的机会,至少可以学习最基本的基础知识。如何使用正则表达式来区分不区分大小写的字符串替换?
如何在C#中使用正则表达式来区分不区分大小写的字符串替换?
myString.Replace("/kg", "").Replace("/KG", "");
(请注意, '/' 是一个文本。)
我知道正则表达式的正确性,并认为这是一个很好的机会,至少可以学习最基本的基础知识。如何使用正则表达式来区分不区分大小写的字符串替换?
如何在C#中使用正则表达式来区分不区分大小写的字符串替换?
myString.Replace("/kg", "").Replace("/KG", "");
(请注意, '/' 是一个文本。)
您可以使用:
myString = Regex.Replace(myString, "/kg", "", RegexOptions.IgnoreCase);
如果你打算这样做了很多次,你可以做:
// You can reuse this object
Regex regex = new Regex("/kg", RegexOptions.IgnoreCase);
myString = regex.Replace(myString, "");
使用(?i:/kg)
将使一个LARG的只是位呃正则表达式不区分大小写 - 我个人更喜欢使用RegexOptions
来使选项影响整个模式。
MSDN具有.NET正则表达式的pretty reasonable documentation。
这取决于你想达到什么。我假设你想在斜杠后删除一系列字符?
string replaced = Regex.Replace(input,"/[a-zA-Z]+","");
或
string replaced = Regex.Replace(input,"/[a-z]+","",RegexOptions.IgnoreCase);
“/ [KK] [gG的]” 或 “(I:/ kg)的” 将匹配为您服务。
声明一个新的正则表达式对象,将其中的一个作为内容传入。然后运行regex.replace。
Regex regex = new Regex(@"/kg", RegexOptions.IgnoreCase);
regex.Replace(input, "");
像这样:
myString = Regex.Replace(myString, "/[Kk][Gg]", String.Empty);
注意,它也将处理组合/ kg和/公斤,因此它比你的字符串替换例子更多。
如果您只想处理特定组合/ kg和/ KG:
myString = Regex.Replace(myString, "/(?:kg|KG)", String.Empty);
Here是使用Regex.replace功能的例子。
你打败我吧! :) – 2009-07-16 18:37:52
你遗漏了冒号:(?i:/ kg) – 2009-07-16 20:03:16
@Alan:谢谢,现在修好了。 – 2009-07-16 20:37:20