我试图匹配由/ inside []分隔的数字,但不包括最后一个字符,为什么会这样?但没有/
import re
regex = r"\[.+?\]"
Sample1= "text text text[One]"
Sample2= "text text text[One/Two]"
Sample3= "text text text[One/Two/Three]"
lines=[Sample1,Sample2,Sample3]
print([re.findall(r"\[(.+?)[^\/]\]", s) for s in lines])
现在的出局是:
[['On'], ['One/Tw'], ['One/Two/Thre']]
我想成为:
[['One'], ['One', 'Two'], ['One','Two','Three']]
正确的正则表达式是什么?
答案 0 :(得分:1)
matches = [re.findall(r"\[(.+[^\/])\]", s) for s in lines]
print(matches)
这会奏效。我纠正了正则表达式。