python - 如何删除字符串中某个字符后的所有内容?

标签 python string character python-3.3

如何在 python 中删除字符串的某个字符之后的所有内容?例如,我有一个包含文件路径和一些额外字符的字符串。我将如何删除 .zip 之后的所有内容?我试过 rsplitsplit ,但在删除额外字符时都没有包含 .zip。

有什么建议吗?

最佳答案

只取拆分的第一部分,然后添加 '.zip' 回来:

s = 'test.zip.zyz'
s = s.split('.zip', 1)[0] + '.zip'

或者您可以使用切片,这是一个解决方案,您不需要将 '.zip' 添加回结果(4 来自 len('.zip'):

s = s[:s.index('.zip')+4]

或者另一种使用正则表达式的方法:

import re
s = re.match(r'^.*?\.zip', s).group(0)

关于python - 如何删除字符串中某个字符后的所有内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17891443/

相关文章:

Python:类型检查需要循环导入

python - django.db.utils.IntegrityError : NOT NULL constraint failed: unesco_site. 类别_id

python - 如何从python API azure sdk获取azure规模集实例的公共(public)IP?

Java:无法找到方法的符号,即使该方法是稍后在类中声明的。剩下的代码就是寻找一个类。

arrays - 如何在 Fortran 中声明可分配标量数组?

Python 将字符串添加到包含多个项目的匹配列表中

vb.net - 根据条件返回消息的方法

C - 如何使用 sscanf <int><string><int> 进行读取?

Javascript:如何使用 JavaScript 可读的特殊字符来操作生成的字符串(来自 .net)

android - 哪些字符不能用于 SQLite 数据库中的值?