gpt4 book ai didi

python - 检查字符串(或拆分字符串)是否包含列表中的任何单词

转载 作者:行者123 更新时间:2023-11-28 21:14:10 25 4
gpt4 key购买 nike

我有一个 Twitter 机器人需要忽略包含某些列入黑名单的词的推文。

这有效,但前提是推文中的词与黑名单中的词完全相同。

timeline = filter(lambda status: not any(word in status.text.split() for word in wordBlacklist), timeline)

我想确保推文无法通过在单词周围放置符号或添加其他字符来绕过此问题,例如通过在其末尾附加“book”来绕过黑名单单词“face”,例如“facebook” .

如何以适合我的过滤器的 lambda 的方式执行此操作?

最佳答案

你可以在这里使用re

import re
timeline = filter(lambda status: not any(re.findall(r"[a-zA-Z0-9]*"+word+r"[a-zA-Z0-9]*",status.text) for word in wordBlacklist), timeline)

如果 word 可以包含一些转义字符,您也可以在 word 上使用 re.escape()

如果你也希望 symbols,试试

timeline = filter(lambda status: not any(re.findall(r"\S*"+word+r"\S*",status.text) for word in wordBlacklist), timeline)

关于python - 检查字符串(或拆分字符串)是否包含列表中的任何单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31924875/

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