Discord.js如何忽略特定文本并发送其余文本[重复]

Posted

技术标签:

【中文标题】Discord.js如何忽略特定文本并发送其余文本[重复]【英文标题】:Discord.js how to ignore a specific text and send the rest [duplicate] 【发布时间】:2021-04-29 14:07:58 【问题描述】:

我正在尝试制作一个私人的表情符号库机器人。我面临的问题在这里:

  case 'madiamond' :
  case 'mashiningdiamond' :
    message.channel.send(`**$message.author.tag** : <a:shiningdiamond:725331059369181284> $message.content`)
    message.delete(timeout: 1000);
  break;

我想让它忽略前缀和命令,即e!madiamond。我面临的问题是,当我在 Discord 中使用此命令时,它会显示如下消息:

我得到了什么:

用户名#0000:(表情符号)e!madiamond 用户消息

我想要什么:

用户名#0000:(表情符号)用户信息

【问题讨论】:

【参考方案1】:

您可以使用String.split() 和Array.slice() 动态删除message.content 的命令部分。然后使用Array.join() 将数组重新连接成一个字符串。

case 'madiamond' :
case 'mashiningdiamond' :
   const filteredContent = message.content.split(' ').slice(1).join(' ');
   message.channel.send(`**$message.author.tag** : <a:shiningdiamond:725331059369181284> $filteredContent`);
   message.delete(timeout: 10);
break;

【讨论】:

以上是关于Discord.js如何忽略特定文本并发送其余文本[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Discord.js 在文本频道中加入/离开语音频道通知

discord.js 以粗体文本发送 api 响应

自定义不和谐机器人:在特定文本通道中发送消息

Discord.js 代码无法发送嵌入消息 [关闭]

Discord.js 尝试在用户加入语音频道时发送消息

机器人没有创建频道 - Discord.js