首页 > 解决方案 > 如何在python中分隔数字和字符串?

问题描述

我从包含字符串和数字的前端获取字符串,例如:"L'Oreal Paris L'Huile Nail Paint, 224 Rose Ballet, 13.5ml"

现在我想将 to 分隔13.5ml13.5一个值和ml另一个值以在后端表中插入该值。

标签: pythonpython-3.x

解决方案


您可以尝试使用re.findall正则表达式模式\d+(?:\.\d+)?ml

input = "L'Oreal Paris L'Huile Nail Paint, 224 Rose Ballet, 13.5ml"
matches = re.findall(r'(\d+(?:\.\d+)?)(ml)', input)
print(matches)

这打印:

[('13.5', 'ml')]

编辑:

要处理捕获已知的单位列表,您可以将上述正则表达式模式修改为以下内容:

\d+(?:\.\d+)?(?:GM|KG|LIT)

这使用更改来表示每个可能的单位,您可以根据需要添加新单位。


推荐阅读