(Discord.js) Bot 删除所有发布的 URL

Posted

技术标签:

【中文标题】(Discord.js) Bot 删除所有发布的 URL【英文标题】:(Discord.js) Bot to delete all URLs posted 【发布时间】:2018-10-02 20:54:58 【问题描述】:

我希望我的机器人删除成员发布的 URL。 我不确定如何检测 URL 已发布,因为它们可以从 https 或 www 开始。或者其他完全... 并赞赏洞察力!

编辑: 发现了和我类似的问题。

Regular expression for URL validation (in javascript)

使用名为 Linkify 的 npm 插件成功解决了同样的问题。

考虑关闭。

【问题讨论】:

到目前为止你尝试过什么?你知道如何制作一个基本的机器人吗? 我有一个制作精良的机器人,具有诸如赠品、基于 mysql 的 XP 级别等复杂功能。我只是想知道我应该比较消息以将其识别为 url 好的,很高兴知道 - 我建议为您的问题添加更多详细信息(例如您尝试过的内容 - 也就是一个超级简单的基本机器人,其中有一个部分显示您的 URL 检查代码的位置 可以去)。因为现在你的问题有 3 票要关闭......仅供参考 你看过正则表达式吗?这是关于通过正则表达式进行 URL 验证(在 javascript 中)的一个有趣的 SO 问题:***.com/questions/1410311/… 这很有帮助,我会看看从那里去哪里,我想要的只是一个起点......我如何关闭/标记这个回答 【参考方案1】:

我建议查看用于 URL 验证的正则表达式 (regex)。

这是另一个你可以作为起点的 SO 问题:Regular expression for URL validation (in JavaScript)

一种推荐的方法是使用这样的正则表达式字符串(来自该问题的答案):

/^(ftp|http|https):\/\/[^ "]+$/.test(url)

此表达式匹配一个完整的字符串,因此您必须编辑此正则表达式以匹配字符串中的 任何 位置,或者在使用该正则表达式之前进行一些消息内容操作。

【讨论】:

以上是关于(Discord.js) Bot 删除所有发布的 URL的主要内容,如果未能解决你的问题,请参考以下文章

从数组中获取项目并将其删除,直到 Discord JS bot 的数组为空

Discord.js 删除所有成员角色

discord.js 机器人正在删除所有消息

discord.js 如何删除所有频道中包含黑名单的消息

使用 Discord.js 使用 Discord Bot 将语音频道中的所有人静音

Discord bot 没有获得所有用户