我有Python
个应用,我试图在字符串中解析<
和>
之间的信息。
我的字符串是:
##MESSAGE=<A=test_id,B=.,C=type,D="Description">\n
我试过了Python
:
pattern = re.compile('*\<(\w+)\>*')
match = pattern.match(line)
但我的模式似乎仍然不正确,因为match
始终等于None
。
任何人都能看到我的模式中存在的问题吗?
答案 0 :(得分:6)
pattern = re.compile('<(\w+)>')
或
pattern = re.compile('<([^>]*)>')
您可以像这样使用模式:
使用re.search()
x = re.search(pattern, input)
print x.group(1)
使用re.match()
:您必须在正则表达式的两端添加.*
。参见示例:
pattern = re.compile('.*<([^>]*)>.*')
# ^^ ^^
x = pattern.match(input)
print x.group(1)
答案 1 :(得分:2)
改为使用re.search
,re.match
尝试从该行的开头进行匹配。