什么会是这样的数据Python正则表达式
/home//Desktop/3A5F.py
path/sth/R67G.py
a/b/c/d/t/6UY7.py
正则表达式我想获得这些
3A5F.py
R67G.py
6UY7.py
什么会是这样的数据Python正则表达式
/home//Desktop/3A5F.py
path/sth/R67G.py
a/b/c/d/t/6UY7.py
正则表达式我想获得这些
3A5F.py
R67G.py
6UY7.py
它看起来像你解析路径,在这种情况下,你应该使用os.path
代替正则表达式:
from os.path import basename
basename('/home//Desktop/3A5F.py')
# 3A5F.py
使用:[^\/]*\.py$
但是,这是一个不好的问题。你需要展示你的尝试。你不在这里为你做你的工作。
*但这是一个糟糕的问题。* - 为什么回答? (基本上,这是所有人在这里回答的问题)。 –
作为替代方案,你可以得到相同的结果没有正则表达式:
lines = ['/home//Desktop/3A5F.py', 'path/sth/R67G.py', 'a/b/c/d/t/6UY7.py']
result = [l.split('/')[-1] for l in lines]
print result
# ['3A5F.py', 'R67G.py', '6UY7.py']
您可以使用它。
pattern = ".*/(.*$)"
mystring = "/home//Desktop/3A5F.py"
re.findall(pattern, mystring)
您还可以使用os.path.split(mystring)
嗨,欢迎计算器。你试过什么了? (提示:不需要正则表达式) – msvalkon
'“/home//Desktop/3A5F.py".split(”/“)[ - 1]' – msvalkon
也许是一个[* Python,从路径中提取文件名,no问题什么os /路径格式*](http://stackoverflow.com/questions/8384737/python-extract-file-name-from-path-no-matter-what-the-os-path-format) –