正则表达式使用特殊字符查找开始和结束字符串

时间:2013-03-10 18:44:57

标签: c# regex special-characters

我们正试图从URL字符串中删除大量特殊字符。 大多数包含TM或版权符号,以及其他一些符号。

我想写一个正则表达式来找到开头的“&”和结尾“;”并删除整个字符串。

我写道:

var title = "RedHorseBar™"   
title = Regex.Replace(title, @"^\&.*\;$", "");

希望获得“RedHorseBar”..但它无效。

如何编写正则表达式来查找“&”和结尾“;”?

3 个答案:

答案 0 :(得分:2)

使用以下内容:&[^;]+;

所以,以你想要的方式使用它:

title = Regex.Replace(title, @"&[^;]+;", "")

答案 1 :(得分:1)

尝试

title = Regex.Replace(title, @"&.*;", "")

您不需要指定匹配开始(^)和匹配结束($)字符,因为您要替换的字符串不是以用字符串结尾开始字符串或结尾(也许)。

答案 2 :(得分:1)

我以为你在寻找像&amp ;; NBSP;等

那么正则表达式应该是这样的:& \ w +;

但你似乎在寻找没有特殊字符的字符串。那么你应该:

string result = Regex.Replace(title, @"&\w+;", "");

我希望这可以帮助你完成任务。