我正在尝试以下操作:
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']
\['?
匹配[
或['
。([^'\]]+)
匹配除'
或]
之外的任何内容并捕获它们。'?\]
匹配]
或']
关于python - 提取方括号之间的值,忽略单引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39601759/