python正则表达式从字符串中查找字符和结尾

时间:2014-09-26 05:13:33

标签: python

SVN备份检验,2014/09/24/18 / Rev1223 / FullSvnCheckout.tgz

从以下字符串我需要获取Rev1233。所以我想知道我们是否可以做任何重复表达。我喜欢关注string.search(" Rev" uptill next /)

到目前为止,我使用split数组拆分了它 s1,s2,s3,s4,s5 = string(" /",4)

3 个答案:

答案 0 :(得分:2)

你不需要正则表达式来做到这一点。它很简单:

 str = 'svn-backup-test,2014/09/24/18/Rev1223/FullSvnCheckout.tgz'
 str.split('/')[-2]

答案 1 :(得分:0)

这是一个快速的python示例

>>> impot re
>>> s = 'svn-backup-test,2014/09/24/18/Rev1223/FullSvnCheckout.tgz'
>>> p = re.compile('.*/(Rev\d+)/.*')
>>> p.match(s).groups()[0]
'Rev1223'

答案 2 :(得分:0)

如果愿意,使用正则表达式从最后查找第二部分:

/(Rev\d+)/[^/]+$

http://regex101.com/r/cC6fO3/1

>>> import re
>>> m = re.search('/(Rev\d+)/[^/]+$', 'svn-backup-test,2014/09/24/18/Rev1223/FullSvnCheckout.tgz')
>>> m.groups()[0]
'Rev1223'