我正在尝试以下操作:
s = "Text text text [123] ['text']"
这是我的功能:
def getFromSquareBrackets(s):
m = re.findall(r"\[([A-Za-z0-9_']+)\]", s)
return m
但我正在获得:
['123', "'text'"]
我要获取:
['123', 'text']
如何忽略单引号?
请您参考如下方法:
您可以使用 ? 将 ' 设为可选
>>> re.findall(r"\['?([^'\]]+)'?\]", s)
['123', 'text']
\['?匹配[或['。([^'\]]+)匹配除'或]之外的任何内容并捕获它们。'?\]匹配]或']
