2024-03-29 12:08:08 发布
网友
我想抓住彼此相邻的括号/圆括号对,并抓住其中的单词。在下面的文本中,我要捕获[oh](so)和[bad](things)。
[oh](so)
[bad](things)
[oh](so)funny [all]the[bad](things)
如果我使用regexr'\[(.*?)\]\((.*?)\)',它将捕获[oh](so)和[all]the[bad](things),这不是我想要的。
r'\[(.*?)\]\((.*?)\)'
[all]the[bad](things)
有什么好的正则表达式可以解决这个问题?
不要使用.*?。
.*?
而是使用[^\]]+和[^\)]+
[^\]]+
[^\)]+
换句话说:
r'\[([^\]]+)\]\(([^\)]+)\)'
不要使用
.*?
。而是使用
[^\]]+
和[^\)]+
换句话说:
r'\[([^\]]+)\]\(([^\)]+)\)'
相关问题 更多 >
编程相关推荐