早上好!我想知道如何使我的漫游器禁止单词,但不仅仅是单词,我希望它禁止所写的整个句子。我已经做到了,但是问题是它并没有禁止整个句子。
long[]
答案 0 :(得分:2)
如果您只想禁止发送包含badWords
的邮件的成员,基本上您可以遵循@Nurfey的回答,并且有很多简单的代码,例如
const badWords = ["foo", "faz", "bar"];
client.on('message', message => {
const hasBadWord = badWords.some(banWord => message.includes(banWord))
if(hasBadWord) {
// delete the message
}
});
如果您的检查更加复杂,以至于您想写2个以上的句子,也可以执行以下操作:
const hasBadWord = badWords.some(banWord => {
// multiple sentences here, and returns true or false
})
Array.some()
的完整文档可在MDN上找到。
答案 1 :(得分:0)
根据您所写的内容,您可以尝试以下操作:
const badWords = ["foo", "faz", "bar"];
client.on('message', message => {
let hasBadWord = false;
badWords.forEach(badWord => {
if(hasBadWord === false) {
if(message.includes(badWord)) hasBadWord = true; // you could do message.toLowerCase().includes(badWord) for case sensitivity
}
});
if(hasBadWord === true) {
// delete the message
}
});
它并没有特别完善,但是您可以根据需要对其进行优化,这只是为了使其易于阅读而已