2017-10-17 85 views
0
import re 

s = 'name1000' 

n = re.split(('\d+'), s) 

print(n) 

输出为['name', '']re.split在分割数字时返回空字符串

我不知道为什么我会在第二个位置得到空的string而不是数字“1000”。

+1

“1000”是你分裂。剩下的部分是“名称”和“”。 –

回答

0

因为您正在使用任何数字序列作为分隔符来分割字符串。如果您的字符串是'name1000name',您的回复将是['name', 'name']

0

我们的正则表达式存在错误。一个解决方案是:

n = re.split('(\d+)', s)