如何拆分单词和数字之间没有空格的字符串



我有一个字符串40% Apple23% Orange21.2% Bananas,我需要得到一个数组,比如:Apple (40%), Orange (23%), Bananas (21.2%)。我想.split()在这里不工作。我该怎么做?

您可以使用正则表达式:

import re
s = "40% Apple23% Orange21.2% Bananas"
out = []
for amount, fruit in re.findall(r"(d+.?d*)s*%s*([^d]+)", s):
out.append("{} ({}%)".format(fruit, amount))
print(", ".join(out))

打印:

Apple (40%), Orange (23%), Bananas (21.2%)

最新更新