我试图通过这个例子了解捕获组:
sentence = "the quick brown fox jumps over the lazy dog"
re.search(r'\S+\s+\S+',sentence)
<_sre.SRE_Match object; span=(0, 9), match='the quick'>
我可以看到这个匹配如下:
re.search(r'\S+\s+\S+',sentence).group()
'the quick'
我想为“快速”字词添加一个匹配组。所以我试试这个:
re.search(r'\S+\s+\(S+)',sentence)
哪个出错:
error: unbalanced parenthesis at position 10
我在这里做错了什么?
答案 0 :(得分:1)
看起来像是一个错字,但我仍然会提供解释。
你转义左括号,使其与文字(
匹配,这使得表达式末尾的右括号没有开头部分,替换:
\S+\s+\(S+)
使用:
\S+\s+(\S+)