如何从字符串中删除非数字字符?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (96)

我已经完成了从文本文件或字符串中删除所有非数字字符(包括空格)的任务,然后在旧字符旁边打印新结果,例如:

之前:

sd67637 8

后:

sd67637 8 = 676378

由于我是初学者,我不知道从哪里开始完成这项任务。

提问于
用户回答回答于

最简单的方法是使用正则表达式:

import re
a = 'lkdfhisoe78347834 (())&/&745  '
result = re.sub('[^0-9]','', a)

print result
>>> '78347834745'
用户回答回答于

在字符串上循环,按char字符并仅包含数字:

new_string = ''.join(ch for ch in your_string if ch.isdigit())

或者在你的字符串上使用正则表达式:

import re
s = 'sd67637 8' 
new_string = ''.join(re.findall(r'\d+', s))
# 676378

然后只是print

print(old_string, '=', new_string)

所属标签

可能回答问题的人

  • 爸爸

    腾讯 · 客户端安全 (已认证)

    4 粉丝4 提问5 回答
  • 找虫虫

    0 粉丝0 提问5 回答
  • 不吃貓的鱼oo

    5 粉丝466 提问4 回答
  • uncle_light

    5 粉丝518 提问4 回答

扫码关注云+社区

领取腾讯云代金券