假設(shè)我有一堆字符串,它們只能采用以下格式:format1 = 'substring1#substring2'format2 = 'substring1$substring2'format3 = 'substring1'讓我解釋。字符串有時(shí)使用#或$字符進(jìn)行分割。然而,其他時(shí)候,他們不是。我想刪除出現(xiàn)在#or之后的部分$(如果存在)。如果它只是一個(gè)特殊字符,即#,我可以這樣做:string = string.split('#')[0]但是我怎樣才能以一種快速而優(yōu)雅的方式為 2 個(gè)特殊字符做到這一點(diǎn)呢?還要假設(shè)以下幾點(diǎn):字符串中只能出現(xiàn)一個(gè)特殊字符。特殊字符不會(huì)出現(xiàn)在字符串的任何其他部分。
3 回答

青春有我
TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超8個(gè)贊
如果您想避免使用正則表達(dá)式,一種可能性是:
string = min(string.split('#')[0], string.split('$')[0])

三國(guó)紛爭(zhēng)
TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超7個(gè)贊
使用正則表達(dá)式!
import re
new_string = re.sub(r"(#|$).*$", "", string)

慕的地10843
TA貢獻(xiàn)1785條經(jīng)驗(yàn) 獲得超8個(gè)贊
常用表達(dá)。
import re
re.sub('[$#].*', '', string_to_modify)
添加回答
舉報(bào)
0/150
提交
取消