替换字符串中的某个子字符串 - .Replace()方法对我不起作用C#

时间:2017-11-06 08:58:51

标签: c# string replace

我目前正在开发一个程序,需要使用.Replace()方法从字符串中删除某个子字符串。但是,代码似乎并没有起作用。

以下是我正在使用的代码:

if (filter.Contains("AND [Type]"))
        {
            String test = "AND [Type] = '" + type + "'";
            filter.Replace(test, "");
        }
        else if (filter.Contains("Type") == true)
        {
            String test = "[Type] = '" + type + "'";
            filter.Replace(test, "");
        }

我已经调试了代码,当单步执行时,字符串测试被设置为过滤器中包含的内容 - 但是代码只是尝试使用替换方法,但保持过滤器不变。

还有其他任何方法可以尝试让这项工作或者我需要退一步并提出另一个想法让这项工作成功吗?

3 个答案:

答案 0 :(得分:3)

您必须将值分配给给定的字符串:

filter = filter.Replace(test, "");

Replace()会返回一个新字符串,更多here

答案 1 :(得分:1)

您需要将替换设置为变量filter = filter.Replace(test, "");

这是一些常见的问题,如日期添加小时,字符串替换..

答案 2 :(得分:0)

看看他的函数定义string.Replace返回你的新字符串:

https://msdn.microsoft.com/de-de/library/fk49wtc1(v=vs.110).aspx