猿问

如何删除 Python 字符串中 2 个特定字符后的字符?

假设我有一堆字符串,它们只能采用以下格式:


format1 = 'substring1#substring2'

format2 = 'substring1$substring2'

format3 = 'substring1'

让我解释。字符串有时使用#或$字符进行分割。然而,其他时候,他们不是。


我想删除出现在#or之后的部分$(如果存在)。如果它只是一个特殊字符,即#,我可以这样做:


string = string.split('#')[0]

但是我怎样才能以一种快速而优雅的方式为 2 个特殊字符做到这一点呢?还要假设以下几点:


字符串中只能出现一个特殊字符。

特殊字符不会出现在字符串的任何其他部分。


肥皂起泡泡
浏览 264回答 3
3回答

青春有我

如果您想避免使用正则表达式,一种可能性是:string = min(string.split('#')[0], string.split('$')[0])

三国纷争

使用正则表达式!import renew_string = re.sub(r"(#|$).*$", "", string)

慕的地10843

常用表达。import rere.sub('[$#].*', '', string_to_modify)
随时随地看视频慕课网APP

相关分类

Python
我要回答