转换为小写字母并删除空格js



我是javascript的新手,目前正在处理不和谐的机器人
我编码了一个机器人程序,它会响应消息,但当我用大写字母输入或通过给空间,机器人程序没有响应时,请帮我修复此

这是我的代码,如果我给出类似";嗨,兄弟
它不响应

bot.on("message", async message => {
if(message.author.bot || message.channel.type == 'dm') return;

let prefix = "-";
let messageArray = message.content.split(" ");
let cmd = messageArray[0];
let args = messageArray.slice(1);

if(cmd === `${prefix}hibro`) {
return message.reply("Hi bro!")
}
)}

大多数情况下,您的解决方案是将所有字母小写或大写。这取决于你,但最好是lowercase。也可以使用trim()来避免多个空格。

const str = 'Whatever Text You    Want';
const res = str.replace(/s+/g,'').toLowerCase();
console.log(res)

使字符串小写后进行比较。示例

var str = "Hello World!";
var res = str.toLowerCase();

如果您想将所有字母转换为小写,那么Javascript有可用于字符串的toLowerCase()方法。要替换空白,可以使用replace方法。

因此,以下代码将给出输出:hibro!

"Hi bro!".toLowerCase().replace(/s/g,'')

/s/g查找字符串中出现的所有空白。

您可以尝试以下方法,

const str1 = 'Whatever Text You    Want';
var k=[...str1.toLocaleLowerCase()];
var s='';
k.forEach(temp=>{
s+=(temp!=' ')?temp:''
})

a.trim((只删除字符串末尾和开头的尾随空格,不会捕获空格之间的空格。

也许你可以在这里参考String.protype.trim((MDN文档

这就足够了。

如果使用message.content获取消息,则使用replaceAll将所有空格替换为破折号,并使用.toLowerCase((将其转换为小写

message.content.replaceAll(' ', '-').toLowerCase()