阻止聊天中的字符串大写/小写C#
我正在尝试创建一个单词过滤器,以阻止在聊天中广播文本文件中列出的任何单词 最初的代码工作得非常出色,但前提是聊天中的单词与文本文件中的单词完全相同 我需要一种方法来阻止这个单词,不管它是全大写、全小写还是介于两者之间的任何形式,但它必须与列表中的单词完全匹配 e、 它不会过滤“ship,ship或ship”,但会过滤。。“嘘**,嘘**”你明白了。我对其他方法持开放态度,不包括制作一个巨大的文本文件列表阻止聊天中的字符串大写/小写C#,c#,filter,char,uppercase,C#,Filter,Char,Uppercase,我正在尝试创建一个单词过滤器,以阻止在聊天中广播文本文件中列出的任何单词 最初的代码工作得非常出色,但前提是聊天中的单词与文本文件中的单词完全相同 我需要一种方法来阻止这个单词,不管它是全大写、全小写还是介于两者之间的任何形式,但它必须与列表中的单词完全匹配 e、 它不会过滤“ship,ship或ship”,但会过滤。。“嘘**,嘘**”你明白了。我对其他方法持开放态度,不包括制作一个巨大的文本文件列表 foreach (var word in File.ReadAllLines("
foreach (var word in File.ReadAllLines("wordlist.txt"))
{
if (message.Contains(word))
player.SendToSelf(Channel.Reliable, ClPacket.GameMessage, "You Cannot Say That Here!");
}
return true;
}
我已经试过了
if (char.IsUpper(message[0]))
player.SendToSelf(Channel.Reliable, ClPacket.GameMessage, "You Cannot Say That Here!");
可以使用类似CurrentCulture/InvariantCultureIgnoreCase/OrdinalingOreCase的东西,但我不确定如何实现这些东西
使用外文字符屏蔽外文(英语除外)中的单词也非常有益。来自MSDN关于以下内容的文章:
您可以将此静态类添加到源代码中,并将其用作StringComparison的参数
if (message.Contains(word, StringComparison.InvariantCulture))
//blah
从本MSDN文章:
您可以将此静态类添加到源代码中,并将其用作StringComparison的参数
if (message.Contains(word, StringComparison.InvariantCulture))
//blah
这可能很有趣:@Phate01谢谢!但是,我不确定如何实现这一点。。正如我所说的,我对这个很陌生。这可能很有趣:@Phate01谢谢!但是,我不确定如何实现这一点。。正如我所说,我对这一点还很陌生。