我在Python中使用正则表达式时很挣扎,我想在字符串中找到最后一个标记的位置。

例:
“ mydrive /项目/ test / version01”

现在我想获取符号在“ test”和“ version01”之间的位置

import re
txt = "mydrive/projects/test/version01"
p = re.compile("/^.*/(.*)$/")
m = re.search(p, txt)
m.group(0)
#but m.group(0) delivers None


但是与此同时,我遇到了“无”的问题,我尝试了几种方法,但是找不到模式。顺便说一下,我从一个javascript页面得到了这个正则表达式,但是我认为模式是相同的。

非常感谢你!

最佳答案

您说:现在,我想获得符号“ test”和“ version01”之间的位置。

我不知道正则表达式将如何帮助您。您可以尝试以下方法:

如果您知道符号是什么,则反向扫描符号(我假设您也这样做,因为它也在正则表达式中):

>>> txt = "mydrive/projects/test/version01"
>>> txt.rfind('/')
21


如果您不知道分隔符:

>>> import os.path
>>> len(os.path.dirname(txt))
21

09-11 05:15