如何从 Python 中的字符串中获取整数值?

2022-01-14 00:00:00 python string integer

问题描述

假设我有一个字符串

string1 = "498results should get" 

现在我只需要从像 498 这样的字符串中获取整数值.在这里我不想使用 list slicing 因为整数值可能会像这些示例一样增加:

Now I need to get only integer values from the string like 498. Here I don't want to use list slicing because the integer values may increase like these examples:

string2 = "49867results should get" 
string3 = "497543results should get" 

所以我只想以完全相同的顺序从字符串中获取整数值.我的意思是像 498,49867,497543 分别来自 string1,string2,string3.

So I want to get only integer values out from the string exactly in the same order. I mean like 498,49867,497543 from string1,string2,string3 respectively.

谁能用一两行告诉我如何做到这一点?

Can anyone let me know how to do this in a one or two lines?


解决方案

>>> import re
>>> string1 = "498results should get"
>>> int(re.search(r'd+', string1).group())
498

如果字符串中有多个整数:

If there are multiple integers in the string:

>>> map(int, re.findall(r'd+', string1))
[498]

相关文章