如何从python中删除给定URL的前缀?

时间:2011-08-29 08:17:56

标签: python url

我知道这很简单,但我想要一个不错的方法。如何从url字符串:

/en/something/123/foo/

获取

/something/123/foo/

这意味着,我想删除第一级(前缀)。

2 个答案:

答案 0 :(得分:3)

如果长度总是三个字符:

str = str[3:]

如果它可以是可变长度的,只使用字符串/列表操作:

str = '/' + '/'.join( str.split('/')[2:] )

或使用正则表达式:

import re
str = re.sub('^/[a-z]*', '', str)

我可能会使用最后一种方法。如果你需要做很多事情(例如在循环中),考虑使用re.compile()编译正则表达式来加速它。

答案 1 :(得分:0)

根据richardolsson的回答,我们可以使用maxsplit的{​​{1}}参数:

str.split

这只拆分前两个分隔符,并返回其余的(第三个列表项)不变。