我想做以下事情:
if (string.Contains("/"))
{
string.Replace("/", "\/"); //this isn't valid
}
我试过
string.Replace("/", "\\/");
但是这给了我我的开始。我怎么能这样做?
由于
答案 0 :(得分:3)
String.Replace
返回带有替换的字符串 - 它不会更改字符串本身。它不能;字符串是不可变的。你需要这样的东西:
text = text.Replace("/", "\\/");
(在将来的示例中,如果您可以使用有效的变量名称btw将会很有帮助。这意味着那些希望使用工作代码进行响应的人可以使用与您使用的名称相同的名称。)
答案 1 :(得分:3)
字符串是不可变的,这意味着您对字符串所做的任何修改都会产生新的字符串,您应该分配Replace
方法的结果:
if (myString.Contains("/"))
{
myString = myString.Replace("/", "\\/");
}
答案 2 :(得分:1)
一种方法是使用逐字字符串文字
string.Replace("/", @"\");