我尝试使用re.search方法搜索括号中的字符串。从我的x的例子中,我只能正确地找到'Parkwoods',我不能找到任何其他字符串。
这是我最初一直在做的事情,添加\s表示空白等,但我仍然找不到花园区、Ryerson和摄政公园/海滨
match = re.search(r"\((\w+)\)", x)
其中x可以等于
North York(Parkwoods)
Downtown Toronto(Garden District, Ryerson)
Downtown Toronto(Regent Park / Harbourfront)
如何将多个搜索参数传递给search
方法?那么如何搜索正斜杠呢?
发布于 2020-03-22 10:22:55
尝试执行以下正则表达式:
\((\w|,| |\/)+\)
在代码方面:re.search(r"\((\w|,| |\/)+\)", x)
解释:
(和):匹配最外面的圆括号
( )+:( )中的一个或多个,用于表示“或”
\w|,| |/ :匹配字母数字或逗号",“或”“(空格”或"/“(反斜杠,我们像”/“一样转义))
试试在https://regexr.com/上玩玩吧
编辑:其他注释建立在被否定的集合^)上,但这将匹配不是右括号的任何字符。您可能希望根据您的应用程序实施更严格的规则。例如,它将与多伦多市中心(&&&*$$)
的(&&&*$$)
相匹配,这是你可能想要的也可能不想要的东西。
https://stackoverflow.com/questions/60795183
复制相似问题