Discord bot:如何知道用户何时在消息中被 ping 而不是因为它是回复

Discord bot : How to know when a user is pinged in the message and not because it's a reply

目标:

我正在尝试让机器人在消息中对特定用户执行 ping 操作时发送消息。
所以我尝试了这个:

if (message.mentions.has(bot.users.cache.get(userID)))

它运行良好,如果您对用户执行 ping 操作,机器人会发送一条消息。除外...

问题:

当您只是回复用户而不在消息中对用户执行 ping 操作时,机器人也会做出反应,我不希望这样。
我能看到的唯一方法是:

if (message.content.includes(userID))

您应该直接检查他们是否在消息中被 ping 过。

const userRegex = new RegExp(`<@!?${userID}>`)
if (message.content.match(userRegex)) {
  //user has been mentioned and it was not because of reply
}