这个正则表达式在python中有什么问题?

时间:2014-10-27 04:33:34

标签: python regex

我想找到一个简单的正则表达式匹配。我在RegexPal中尝试了我的正则表达式,似乎工作正常。

pat = re.compile("\sterm=\"([\w\s]+)\"")
line = "<aspectTerm term=\"battery life\" polarity=\"positive\" from=\"74\" to=\"86\"/>
mat = pat1.match(line)
print mat ### Prints None

行实际上是从文件中读取的。

我试着看看这里有什么问题。所以我现在正在尝试这个: -

re.match("term", "string term")

在这里,我还得到了无。怎么了?

1 个答案:

答案 0 :(得分:1)

pat1 = re.compile("\sterm=\"([\w\s]+)\"")
line = '<aspectTerm term=\"battery life\" polarity=\"positive\" from=\"74\" to=\"86\"/>'
mat = pat1.search(line) #or pat1.findall(line)
print mat.groups()

您需要pattern.search而不是pattern.match,因为它从字符串的开头开始匹配。

输出:('battery life',)