我在Unity中为我的玩家用户名实现了一个简单的脏话过滤器。但是由于某些原因,我没有得到正确的结果。如下面的代码所示,我从TextAsset.txt文件中提取单词到一个字符串列表中,并使用Contains()函数循环检查用户名是否包含一个坏词。但是Contains()函数总是返回false。我还尝试了什么:
1.已尝试“==”运算符来测试字符串是否准确,但仍返回false
1.已尝试Equals()函数测试字符串是否准确,但仍返回false
1.已尝试regex,但仍无法正常工作注意:checkText和badWordToUpper都是字符串类型,并且显示了正确的结果。但是在比较时,不起作用。
1条答案
按热度按时间kmbjn2e31#
听起来像是一个坏单词中隐藏了一个白色字符。如果您使用的是Windows,则中断行为
"\r\n"
。您可以使用以下命令进行检查:如果是这样,你需要清理每个单词,比如:
额外好处:在
Start
中转换为大写以缓存操作。