【发布时间】:2017-01-19 06:17:18
【问题描述】:
我有这个模式p 并且想使用这个模式来查找它是否有任何匹配。这是在 Python 中。
p = "keyword" + ".*?(\d+(\.\d+)?[\s%]?[\w/]*)"
found = re.findall(p, some_text)
我在解析这个正则表达式时遇到问题。
-
第一个“?”是什么。
我知道“.*”匹配任何事物 0 次或更多次。但不确定“?”是什么?在这里做。
看到嵌套的捕获组括号很奇怪。它有什么作用?
什么是“?”在
[\s%]?正则表达式中?我认为这是匹配空格后跟“%”。但不确定“?”是什么?在这里做。[\w/]*正则表达式中的星号是什么?我假设这匹配任何单词字符,后跟正斜杠。但不确定“*”的作用。
【问题讨论】:
标签: python regex python-3.x