Python使用多个定界符分割字符串并找到使用的定界符


问题内容

如何使用多个定界符分割字符串,并找出使用哪个定界符以最大分割数1分割字符串。

import re

string ="someText:someValue~"
re.split(":|~",string,1)

返回['someText', 'someValue~']。在这种情况下,“:”是分割字符串的分隔符。

如果string为string ="someText~someValue:",则“〜”将作为分隔符以分割字符串

有没有办法找出使用哪个定界符并将其存储在变量中。

PS:someText和someValue可能包含特殊字符,这些字符未在split中使用。例如:some-Text,some_Text,some $
Text


问题答案:
string ="someText:someValue~"
print re.split("(:|~)",string,1)

如果放在组中,它将出现在返回1的列表中。您可以从列表的索引中找到它。