Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从字符串中提取子字符串,python_Python_String - Fatal编程技术网

从字符串中提取子字符串,python

从字符串中提取子字符串,python,python,string,Python,String,我有一个指向某个文件的路径: 'home/user/directory/filename' 我想得到文件名-子部分。主要问题是,我不知道字符串的长度,也不知道文件名的长度。我只知道文件名放在字符串的末尾,在最后一个斜杠/之后。字符串中斜杠的数量可能是绝对随机的(因为我想从某些PC上的每个目录中获取文件名)。 因此,我现在看不到索引提取的常用方法,如: string[number:] 有什么想法吗 要获取基本名称,请使用: 返回路径名路径的基名称。这是通过传递函数split()的路径返回的第二

我有一个指向某个文件的路径:

'home/user/directory/filename'
我想得到
文件名
-子部分。主要问题是,我不知道字符串的长度,也不知道文件名的长度。我只知道文件名放在字符串的末尾,在最后一个斜杠
/
之后。字符串中斜杠的数量可能是绝对随机的(因为我想从某些PC上的每个目录中获取文件名)。 因此,我现在看不到索引提取的常用方法,如:

string[number:]
有什么想法吗

要获取基本名称,请使用:

返回路径名路径的基名称。这是通过传递函数split()的路径返回的第二个元素

str.rsplit

 print(pth.rsplit("/",1)[1])
 filename
如果您试图为上次出现的字符串编制索引,则应使用rindex:

print(pth[pth.rindex("/") + 1:])

你也可以试试这个

>>> import os
>>> s = 'home/user/directory/filename'
>>> os.path.split(s)[1]
'filename'

re.match(r“(.*)/(.*)”,s).group(2)
另一个小建议:-将该引号放在quote
块中。它看起来会明亮干净。@BhargavRao,你是个严厉的监工;)想象一下,如果我成为某所大学的校长。学生们会的@#$@巴尔加夫罗,哈哈,是的,我仍然记得我们为一些老师取的可爱的名字。
>>> import os
>>> s = 'home/user/directory/filename'
>>> os.path.split(s)[1]
'filename'