【发布时间】:2019-06-30 17:52:39
【问题描述】:
我正在创建一个聊天过滤器,我想删除任何潜在的坏词。我有一个由文本文件填充的字符串列表。然后我允许用户输入他们的消息,我想检查他们的消息是否包含我制作的列表中的坏词。我遇到的问题是代码根本不起作用。布尔值“isBadWord”总是返回 valse。谁能帮我解决这个问题。
我已确保文本文档正确加载,并且列表中确实填充了不允许的单词。
void CheckMessage(string messageToSend)
{
bool isBadWord;
if (purgeWords.Contains(messageToSend.ToLower()))
{
isBadWord = true;
}
else
{
isBadWord = false;
}
if (isBadWord == true)
{
print("badword");
StartCoroutine(ClearMessageBadWord());
}
else
{
SendText(messageToSend);
}
}
【问题讨论】:
-
我认为
messageToSend是完整 消息,而不仅仅是一个单词? -
purgeWords 是否也转换为小写?
-
什么是“purgeWords”?您为什么认为“purgeWords”包含(整个)messageToSend?
-
@streamlinemessageToSend 是完整的句子作为字符串。即使句子包含一个坏词,我也想禁止整个句子
标签: c#