Python 拆分字母数字字符串

Python 拆分字母数字字符串,python,string,split,Python,String,Split,我有几根看起来像 "Abcde fgh 123,456" 我想把它分成两份 ["Abcde fgh", "123,456"] 我试过了 string = "Abcde fgh 123,456" re.split(r'(\d+)', string) 但这给了 ["Abcde fgh", "123", "," "456"] 您之所以得到这个结果,是因为您使用了一个捕获组,该组还将返回捕获的文本 你可以用积极的前瞻来代替(?=\d)可以工作,但更准确地说,对于示例数据,您还可以使用: ( 重

我有几根看起来像

"Abcde fgh 123,456"
我想把它分成两份

["Abcde fgh", "123,456"]
我试过了

string = "Abcde fgh 123,456"
re.split(r'(\d+)', string)
但这给了

["Abcde fgh", "123", "," "456"]

您之所以得到这个结果,是因为您使用了一个捕获组,该组还将返回捕获的文本

你可以用积极的前瞻来代替
(?=\d)
可以工作,但更准确地说,对于示例数据,您还可以使用:

重新导入
string=“Abcde fgh 123456”

我已经更新了我的答案,添加了一个否定的lookback
(?)?
import re
string = "Abcde fgh 123,456"
print(re.split(r'(?<!\d)\s+(?=\d+,\d+)', string))