如何去除包含正斜杠的字符串?

2024-05-14 23:18:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我是python编程新手,试图去掉包含正斜杠字符的字符串,我希望输出为'/stack',但给出的结果如下。你能帮我怎样才能达到预期的效果吗?还有其他简单的方法可以达到同样的效果吗。

>>> name='/stack/overflow'
>>> sub ='/overflow'
>>> name.strip(sub)
'stack'

提前谢谢 赫马


Tags: 方法字符串namestack编程字符strip效果
2条回答

首先你需要检查你正在使用的OS

如果它的Linux/Unix

通常,文件路径由/表示

所以你可以简单地使用

>>>name = '/stack/overflow'

>>>name.split(os.sep)  # Here os.sep is nothing but "/"

['', 'stack', 'overflow']

如果是窗户

只是使用

>>> name.split("/")
['', 'stack', 'overflow']

.strip方法并不像您想象的那样:

Docstring:
S.strip([chars]) -> string or unicode

Return a copy of the string S with leading and trailing
whitespace removed.
If chars is given and not None, remove characters in chars instead.
If chars is unicode, S will be converted to unicode before stripping

所以你要说的是“从这个字符串的开头或结尾删除/,o,v,e,r,f,l,o,w。”

相反,尝试在/上拆分,获取除最后一个元素之外的所有元素,然后重新连接:

In [12]: '/'.join("/stack/overflow".split('/')[:-1])
Out[12]: '/stack'

如果实际上只想删除子字符串'/overflow',可以执行以下操作:

In [15]: "/stack/overflow".replace('/overflow', '')
Out[15]: '/stack'

相关问题 更多 >

    热门问题