替换C#中的方括号

时间:2012-11-11 13:49:38

标签: c# .net string replace escaping

有一个字符串是html页面的innerHTML。在那里有内容...我需要逐个部分替换...我用以下公式替换了几个。

string formated = str.replace("*","") 

这会将该html页面中的所有*替换为空白。但我需要将以下内容替换为空白。

[问题/]

[ - 选择 - /]

[]

[上传]

[问题/]

所以我使用了以下代码:

str.replace("[Issue \/]","")
str.replace("[-Select- \/]","")
str.replace("[    ]","")
str.replace("[Upload]","")
str.replace("[Issue \/]","")

但我可以在html中看到上述字符串中内容的任何替换。

HTML中有一个图像按钮。那个图像按钮我也需要更换。

图片按钮的html代码如下:

<asp:ImageButton ID="btnAddHotel" runat="server" ImageUrl="/Style Library/images/icon-add.gif" OnClick="btnAddHotel_Click" OnClientClick="return HideAllTicketValidations();" />

请告诉我,如何更换所有这些字符串

希望我已经解释得很好。

2 个答案:

答案 0 :(得分:4)

str.Replace不会进行更改,而是返回一个新字符串 尝试使用:
    var newstr = str.Replace(.....)

答案 1 :(得分:-2)

您需要禁用特殊字符(括号),如下所示:

str="Example [Issue]" 
str.replace("\[Issue\]","")   //str == "Example "