在字符串Python中找到的度量单位的转换器

问题描述 投票:0回答:1

大家好,我来这里是因为我需要您的帮助:)我需要找到以字符串为单位的度量单位并将其转换。就我而言,我需要克和毫克。

示例:“文字文字...使用0.0075克”或“文字文字...使用0.0075克”或“文本文本...使用0,0075g”

我有正则表达式来找到度量单位:re.findall(r"(\d*\.?(?:.|,)\d+)\s*(lbs?|g)" ,text)

但是我不确定如何获取这条匹配的文本,请检查它们是克还是毫克如果是克,则乘以1000,然后将字符串修改为:“ text text .... use 75mg”谢谢您的帮助和解释。

python-3.x units-of-measurement
1个回答
0
投票

您可以使用拆分方法来分离出您感兴趣的内容:

string = "random text text text use 0.0075g"
check = string.split("m")
print(check)
if check[len(check)-1] == "g":
    print("already in mg")
else:
    step = string.split(" ")
    step2 = step[len(step)-1].split("mg")
    newstring = " ".join(step)
    step3 = step2[0].split("g")
    step4 = float(step3[0])
    newstring = newstring.replace(step2[0], str(step4*10000)+"mg")
    print(newstring)

我放置了许多“步骤”变量,因此您可以轻松理解。

两次警告:

  • “使用0,75克”不行->将点用作昏迷“使用0.75克”

  • “使用0.75克”不行->不要在空格中使用“ 0.75克”

© www.soinside.com 2019 - 2024. All rights reserved.