python模式匹配匹配后需要字符串

时间:2016-03-07 12:20:50

标签: python regex

我在.for $i = 5 .. 13中有一个类似dict['comment']的字符串。我希望在$i =之后得到字符串 我的输出就像5 .. 13

我试过

if re.match('.for',dict['comment']):
    p=re.match('.for',dict['comment'])
    print '%s' %p.group(0)

此匹配只给出匹配字符串的模式 我正在输出

.for
.for
.for

但我希望在.for $ i =

之后输出

建议

2 个答案:

答案 0 :(得分:0)

您需要捕获=

旁边的文本
p = re.match(r'.for[^=]*=\s*(.*)',dict['comment'])
if p:
    print '%s' %p.group(1)

答案 1 :(得分:0)

如果整个字符串为string.split()

,您也可以使用原生.for $i = 5 .. 13
s = dict['comment']
if '.for' in s:
    output = s.split('=')[1]
#output is then: " 5 .. 13"