使用Regex从字符串中查找并替换Asterisk(*)

时间:2014-05-06 07:29:05

标签: c# regex

我有一个这样的字符串:

  

达勒姆*与约克郡相比

我在C#中使用了一个正则表达式,用一些文本替换字符串中的星号,如:

string aString = "Durham * versus Yorkshire";
string newstring = Regex.Replace( aString, @"\*", "Replaced text");

我想要这个输出:

  

达勒姆取代文本与约克郡

但这不起作用。我认为使用*转义\会找到它。但事实并非如此。你也可以在这里测试它:RegExr。 有人能告诉我哪里错了吗?

3 个答案:

答案 0 :(得分:3)

对于像这样的简单替换,您不需要使用正则表达式,String.Replace就足够了:

string aString = "Durham * versus Yorkshire";
string newstring = aString.Replace("*", "Replaced text");

答案 1 :(得分:3)

尝试了你的代码,它似乎工作。甚至你的正则表达式都适用于regexr.com

string aString = "Durham * versus * Yorkshire";
string newstring = Regex.Replace(aString, @"\*", "Replaced text");

输出

  

Durham替换了文字与替换文本Yorkshire

你也可以考虑使用String.Replace(),如

aString.Replace("*", "Replaced text");

答案 2 :(得分:0)

string aString = "Durham * versus Yorkshire";
string newstring = Regex.Replace( aString, "\\*", "Replaced text");