[英]What does this regex pattern match?
regex = re.compile(r"\s*[-*+]\s*(.+)")
尤其是这部分: \s*[-*+]
我想匹配这个string
:
[John](person)is good and [Mary](person) is good too.
但它失败了。
\s*[-*+]
是否意味着以下内容:
匹配一个可选空格,后跟以下字符之一: -
、 *
、 +
这是在 Python 中。
模式\s*[-*+]\s*(.+)
表示:
\s*
- 匹配零个或多个 whitesapces
[-*+]
- 匹配集合中的一个字符: -
或*
或+
(.+)
- 匹配任何一个或多个字符并将其存储在捕获组中( .
表示任何字符,括号表示捕获组)
在您的句子中,由于缺少集合-*+
中的任何字符,模式将不匹配任何内容。
它会匹配,例如* (person) is good too.
在
[John](person)is good and [Mary] * (person) is good too.
为了匹配括号中的名称及其描述,请使用\[([^\]]+)\]\(([^)]+)
解释:
\[
- 匹配[
字面意思
([^\]]+)
- 匹配]
以外的一个或多个字符并将其存储在第一个捕获组中
\]
- 匹配[
字面意思
\(
- 匹配(
字面意思
([^)]+)
- 匹配)
以外的一个或多个字符
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.