如何分隔参数中的单词(discord.js)

Posted

技术标签:

【中文标题】如何分隔参数中的单词(discord.js)【英文标题】:how to separate words in arguments (discord.js) 【发布时间】:2020-11-21 18:04:38 【问题描述】:
client.on('message', message => 
    if (!message.content.startsWith(prefix) || message.author.bot) return;

    const args = message.content.slice(prefix.length).trim().split(' ');
    const command = args.shift().toLowerCase();

    if (command === 'say') 
        if (!args.length) 
            return message.channel.send(`Please tell the bot what to say, $message.author`);
        
    
        const  Client, MessageEmbed  = require('discord.js');
        const embed = new MessageEmbed()
            .setTitle(`$args`)
            .setColor('RED')
        message.channel.send(embed);
    
)

但每当我输入!say subscribe today 时,它就会显示为subscribe,today 有人可以告诉我一种分隔论点的方法,以便逗号不存在并且它不止一个词吗?

【问题讨论】:

args 是一个字符串数组,您可以使用例如 text = args.join(' '); 从它创建一个字符串 我会把这个放在哪里? 【参考方案1】:
if (command === 'say') 
        if (!args.length) 
            return message.channel.send(`Please tell the bot what to say, $message.author`);
        
        let text = args.join(' '); //Join the array of strings with a space to create a text to send
        const  Client, MessageEmbed  = require('discord.js');
        const embed = new MessageEmbed()
            .setTitle(text)
            .setColor('RED')
        message.channel.send(embed);
    

更多关于 array.join() 方法here

【讨论】:

【参考方案2】:
const Discord = require('discord.js');
const client = new Discord.Client();
const prefix = '!';
client.on('message', (message) => 
    let args = message.content.substring(0, prefix.length).split(' ');
    let command = args.shift();
);

【讨论】:

我很困惑,我不明白这有什么帮助 args 它的命令参数,命令它的第一个书面世界

以上是关于如何分隔参数中的单词(discord.js)的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 discord.js 获取另一个单词之后的单词

如何添加一种方法来检查某人是不是已经在部落中/或者他们是不是是 Discord 中的部落所有者 - Discord.JS

discord.js-commando RangeError:参数类型“字符串”未注册

如何检查 discord.js v12 中的第二个参数是不是为空

有没有办法在 discord.js 中发出 ping 命令? [复制]

将数组划分为嵌入页面 - Discord.JS