我想识别一个字符串,例如:
a = 'KI83949 anythingHere 900.00 1 900.00'
字符串由三部分组成:
index part is the string before the first space
- 'KI83949'
可以是任何东西,而且在大多数情况下,它是字符+数字。
string between a[0] and the first floating number
with two decimal points is the seconde part
-'anything here'
可以是任何东西
starting with the 2-decimal-point floating number is the last part
-'900.00 1 900.00'
可以是
'900.00' or '900.00 1 1003.00' or '900.00 100.00'
float or float+int+float or float+float
这里的数字会改变。对于整个字符串,数字部分始终存在,而前两个部分可能不存在。我正在尝试从数千个其他字符串中过滤出具有上述特征的字符串。我尝试了几种方法来表达这一点,但仍然失败。对不起,我的正则表达式知识很差。最接近的镜头如下:
'.*\s?[\d.]+(\s\d)?[\s\d.]+$'
但是,它将返回类似“TS90190”或“80 thda 4318”的内容。在这上面花了几个小时之后,现在它让我发疯了。有人可以帮我吗?