Python 2.7.3 (default, Apr 20 2012, 22:44:07)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> s = "www.example.com/help"
>>> s.strip('/')
>>> 'www.example.com/help' #expected 'www.example.comhelp'
>>> t = "/blah/blah/"
>>> t.strip('/')
>>> 'blah/blah' #expected 'blahblah'
>>> s.strip('w.')
>>> 'example.com/help' #expected 'examplecom/help'
>>> f = 'www.example.com'
>>> f.strip('.')
>>> 'www.example.com' #expected 'wwwexamplecom'
>>> f.strip('comw.')
>>> 'example' #as expected
有人可以解释为什么str.strip似乎没有像承诺的那样工作吗?
来自文档:
str.strip([字符])
返回删除了前导和尾随字符的字符串副本。 chars参数是一个字符串,指定要删除的字符集。如果省略或None,则chars参数默认为删除空格。 chars参数不是前缀或后缀;相反,它的所有值组合都被剥离了:
答案 0 :(得分:12)
str.strip([字符])
返回字符串的副本,并删除前导字符。
使用此命令在任何地方替换字符串:
s.replace('/', '')
答案 1 :(得分:7)
strip只会删除前导和尾随字符。
我建议使用:
s.replace('/', '')
代替。
答案 2 :(得分:3)
另一种方法
In [19]: s = 'abc.com/abs'
In [29]: exclude = '/'
In [31]: s = ''.join(ch for ch in s if ch not in exclude)
In [32]: s
Out[32]: 'abc.comabs'