在C#中发誓单词过滤器

时间:2019-06-08 13:20:05

标签: c#

我正在尝试使用C#制作脏话过滤器。我正在使用字符串列表,并仔细检查并检查输入内容是否包含列表中的单词。但是当我运行代码时,它不会过滤任何内容。

我试图使它成为一个数组,将其更改为布尔值,但似乎无济于事。

private List<string> badWords = new List<string>();
    public string FilterSwear(string text)
    {
        string filterd = text;
        foreach (string badWord in badWords)
        {
            if (text.Contains(badWord))
            {
                int chars = badWord.Length;
                string stars = "";
                for (int i = 0; i < chars; i++)
                {
                    stars += "*";
                }
                filterd.Replace(badWord, stars);
            }
        }

        return filterd;
    }

1 个答案:

答案 0 :(得分:2)

尝试:

filterd = filterd.Replace(badWord, stars);

Replace不会就地替换-它会返回带有替换字符串的copy并保持原始状态不变。