从字符串grep数字

时间:2014-05-27 15:09:38

标签: python regex

有一种方法只有字符串中的grep数字吗?

例如:

a = "abcd1.34-poytr"

我只想要" 1.34"

2 个答案:

答案 0 :(得分:2)

您可以使用正则表达式:

import re

a = "abcd1.34-poytr"

re.findall(r'\d+(?:[.,]\d+)?', a)

实施例

import re

a = "abcd1.34-poytr23w12"

print re.findall(r'\d+(?:[.,]\d+)?', a)

[OUTPUT]
['1.34', '23', '12']

答案 1 :(得分:1)

胜利的正则表达式:

import re

s = "sdfsdsf3.657ddsfdsfdsfdsd-12dfdsfsdfsd-67.34fdsfsfss"
re.findall(r"[-+]?\d*\.\d+|[-+]?\d+", s)

输出:

>> ['3.657', '-12', '-67.34']