我在Python下的正则表达式并没有看到模式。你能告诉我这里我做错了什么吗?
=====
import re
l = 'rootfs on / type rootfs (rw xyz'
m_obj = re.match(r'on / type .*? \(rw', l)
if m_obj:
print "Found!"
else:
print "Not found!"
=================
由于
答案 0 :(得分:2)
查看re module的文档 - 尤其是match
和search
之间的区别。你应该在这里使用的是search
(你的正则表达式与整个字符串不匹配):
import re
l = 'rootfs on / type rootfs (rw xyz'
m_obj = re.search(r'on / type .*? \(rw', l)
if m_obj:
print "Found!"
else:
print "Not found!"
答案 1 :(得分:1)
match
,从字符串
您需要使用search
。它应该是:
re.search(r'on / type .*? \(rw', l)
答案 2 :(得分:1)
实际上match
从字符串的开头开始 - 所以尝试
import re
l = 'rootfs on / type rootfs (rw xyz'
m_obj = re.match(r'.*?on / type .*? \(rw', l)
if m_obj:
print "Found!"
else:
print "Not found!"