英文:
Regex in discord.py purge check?
问题
在discord.TextChannel.purge
的check
参数中实现正则表达式检查是否可能?
我认为我必须使用lambda或其他东西,但我真的不确定。任何示例都将不胜感激!
我正在使用最新版本的pycord
和re
。
英文:
Is it possible to implement a regex check in the check
argument of discord.TextChannel.purge
?
I believe that I have to use lambda or something, but I'm really not sure. Any example would be appreciated!
I'm using the latest version of both pycord
and re
.
答案1
得分: 0
"Lambda" 可以使用。您必须定义一个方法来检查消息是否与正则表达式匹配。
def matches(message, regex):
if re.match(regex, message): return True
return False
# 要么从命令/消息内容中获取您的正则表达式,要么将其设置为一个变量。
arg = "\d+" # 任意
await ctx.channel.purge(limit=10, check=lambda message, regex=arg: matches(message, regex))
编辑:修正了代码。之前是错误的。现在正确。
英文:
Lambda
can be used. You have to define a method to check if the message matches the Regex.
def matches(message, regex):
if re.match(regex, message): return True
return False
#Either get your regex from the command/message content or just set it to a variable.
arg = "\d+" #arbitrary
await ctx.channel.purge(limit=10, check=lambda message, regex=arg: matches(message, regex))
Edit: Fixed code. Was wrong. Now right.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论