如何只打印字符串中的整数/数字

时间:2013-10-20 23:15:01

标签: string python-2.7 python-3.x int return

你好我在编程和python方面相当新,我有一个问题。

我如何打印或仅返回字符串中的数字

例如:

"Hu765adjH665Sdjda"

输出:

"765665"

4 个答案:

答案 0 :(得分:3)

您可以使用 re.sub 删除任何不是数字的字符。

import re

string = "Hu765adjH665Sdjda"
string = re.sub('[^0-9]', '', string)
print string
#'765665'

re.sub从左到右扫描字符串。每当它找到一个不是数字的字符时,它就会替换为空字符串(这与为实际目的而删除它相同)。

答案 1 :(得分:1)

>>> s = "Hu765adjH665Sdjda"
>>> ''.join(c for c in s if c in '0123456789')
'765665'

答案 2 :(得分:0)

尝试过滤

>>> str='1qaz2wsx3edc4rfv5tgb6yhn7ujm8ik9ol'
>>> print str
1qaz2wsx3edc4rfv5tgb6yhn7ujm8ik9ol
>>> filter(lambda x:x>='0' and x<='9', str)
'123456789'

答案 3 :(得分:0)

sentence = "Hu765adjH665Sdjda"

for number in sentence:
    if number in "0123456789":
        print(number)