gpt4 book ai didi

javascript - 所有 Discord 标签类型的正则表达式模式

转载 作者:行者123 更新时间:2023-11-30 11:15:58 25 4
gpt4 key购买 nike

做一些 discord.js 机器人开发,我正在尝试创建一个正则表达式来过滤掉所有类型的 discord 标签(也称为标记用户和自定义表情)。我尝试了一些不同的东西,但没有一个能捕捉到每一个案例。标签的 5 种主要样式是:

<@108012418998792192> (User)
<@!420279649055145996> (User)
<:oof:463391326491377674> (Emote without number in name)
<:Tyler1:311344841466576896> (Emote with number in name)
<:1234:123412314353463456> (Emote that just has number in name)

我遇到的主要问题之一是标签类型的多样性。如果您注意到一个用户有一个 @! 而另一个用户只有 @ 开头。表情完全是另一回事,以 :ALPHA_NUMERIC: 开头。

这个机器人过滤了很多消息,所以我试图让它尽可能高效和紧凑。

我试过做这样的事情

arg.replace(/<\D+\d+>/g, '').trim();
arg.replace(/<\D+\w+>/g, '').trim();

但它无法过滤掉最后 2 个。

最佳答案

Looks like (regexr.com link)

<((@!?\d+)|(:.+?:\d+))>

应该可以解决问题。

关于javascript - 所有 Discord 标签类型的正则表达式模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51519474/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com