我想打印一个特定变量
中的所有匹配项代码:
import re
regex = r"https?://?www[.]?telegram|t.me/[a-zA-Z0-9_-]*/?$"
data="https://t.me/cronosapesd fdsfdsfds https://t.me/osapesdd fd"
matches = re.findall(regex, data)
print(matches)
当前输出[]
。我希望脚本显示"https://t.me/cronosapesd"one_answers"https://t.me/osapesdd"仅在列表
谢谢!
您的regext|telegram
的核心不绑定到一个组,因此它不像您期望的那样工作,最后的$
也是如此。
这个应该更好:https?://(?:www.)?t(?:elegram)?.me/[a-zA-Z0-9_-]*/?
.
它开始和你的一样,匹配http
或https
,然后www.
可能,然后t
和elegram
,然后.me
和url的结尾。
import re
regex = r"https?://(?:www.)?t(?:elegram)?.me/[a-zA-Z0-9_-]*/?"
data="https://t.me/cronosapesd fdsfdsfds https://t.me/osapesdd fd"
matches = re.findall(regex, data)
print(matches)
和一个包含所有版本的演示:https://regex101.com/r/LibrFn/1