簡體   English   中英

Discord.js | 拆分一條消息

[英]Discord.js | split a message

我對開發世界還很陌生,我想練習使用JS,並且了解到Discord機器人可以用這種語言完成,我發現練習起來很酷。

我的問題:我想將命令與其余消息分開。 我設法將命令與單詞分開,但是當我輸入多個單詞時,它不起作用。 這是它的作用:

(!Command HELLO”將發送“ Command + Hello”,但“!command HELLO HI”將不起作用)

 const PREFIX = "!"; bot.on('message', function(message) { if(message.content[0] === PREFIX) { let splitMessage = message.content.split(" "); if(splitMessage[0] === '!command') { if(splitMessage.length === 2) { message.channel.send('Command + ' + splitMessage[1]); } } } }); 

謝謝

 splitMessage[1]

從拆分數組中獲取第二個單詞。 因此,使用Command! Hello world Command! Hello world Hello 您可能希望將所有內容都放在拆分后的消息的第一個元素之后,如下所示:

splitMessage.slice(1)

返回["Hello", "World"] ,因此您只需要將其連接回字符串即可

 .join(" ")

我該怎么做:

  const [command, ...args] = message.content.split(" ");

  switch(command){
    case "!Command":
       message.channel.send('Command + ' + args.join(" "));
    break;
    //....
  }

正如我在評論中所述:

    const PREFIX = "!";
    bot.on('message', function(message) {
        if(message.content[0] === PREFIX) {
            let command = message.content.substring(message.content.indexOf(" ") + 1, message.content.length);
            message.channel.send('Command + ' + command);
        }
    });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM