Python2.7.1 我试图使用python正则表达式来提取模式中的单词
我有一些像这样的绳子
someline abc
someother line
name my_user_name is valid
some more lines
我想提取“我的用户名”这个词。我做了一些像
import re
s = #that big string
p = re.compile("name .* is valid", re.flags)
p.match(s) #this gives me <_sre.SRE_Match object at 0x026B6838>
如何提取我的用户名?
您可以使用匹配的组:
例如
在这里,我使用
re.findall
而不是re.search
来获取my_user_name
的所有实例。使用re.search
,您需要从match对象上的组获取数据:如注释中所述,您可能希望使regex不贪婪:
只在
'name '
和下一个' is valid'
之间提取内容(而不是允许regex提取组中的其他' is valid'
)。你可以用这样的东西:
你需要从regex中捕获。
search
对于模式,如果找到,则使用group(index)
检索字符串。假设执行了有效的检查:相关问题 更多 >
编程相关推荐