你好我在编程和python方面相当新,我有一个问题。
我如何打印或仅返回字符串中的数字
例如:
"Hu765adjH665Sdjda"
输出:
"765665"
答案 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)