我对为什么会发生这种情况感到有些困惑。这是简短的代码:
with open("file.xml") as xmlFile: # reading the xmlFile
xmlLines=list()
for line in xmlFile:
newLine=xmlSearch.findall(line)
print newLine
返回:(出于安全原因,我更改了实际输出)
[]
[]
[]
[]
[]
['TEXT_IN_STRING_FORMAT-SENSITIVE_DATA']
['TEXT_IN_STRING_FORMAT-SENSITIVE_DATA']
['TEXT_IN_STRING_FORMAT-SENSITIVE_DATA']
['TEXT_IN_STRING_FORMAT-SENSITIVE_DATA']
['TEXT_IN_STRING_FORMAT-SENSITIVE_DATA']
['TEXT_IN_STRING_FORMAT-SENSITIVE_DATA']
[]
[]
[]
[]
[]
但是,如果我使用 re.search 我会得到以下信息:
with open("file.xml") as xmlFile: # reading the xmlFile
xmlLines=list()
for line in xmlFile:
newLine=re.search(r"\w/([\w\-]+)",line)
print newLine
(出于安全原因,编辑输出以防万一)
None
None
None
None
None
<_sre.SRE_Match object at 0x000....SNIP>
<_sre.SRE_Match object at 0x000....SNIP>
<_sre.SRE_Match object at 0x000....SNIP>
<_sre.SRE_Match object at 0x000....SNIP>
<_sre.SRE_Match object at 0x000....SNIP>
<_sre.SRE_Match object at 0x000....SNIP>
None
None
None
None
None
知道为什么会这样吗?从我在 Python 文档和本网站上找到的示例中,re.search 也应该返回一个字符串。最后添加 .groups() 会导致以下错误:
AttributeError: 'NoneType' object has no attribute 'groups'
我正在使用 Python 2.7