Python: 去掉字符串中的非数字(或非字母)字符

最近使用python写一脚本,就字符串中数字问题,网上查了下原来python早都为我们提供了很好的方法,在次感叹自己python的无知,在此做下记录

>>> crazystring = ‘dade142.;!0142f[.,]ad’
只保留数字 >>> filter(str.isdigit, crazystring) ‘1420142’
只保留字母 >>> filter(str.isalpha, crazystring) ‘dadefad’
只保留字母和数字 >>> filter(str.isalnum, crazystring) ‘dade1420142fad’
如果想保留数字0-9和小数点’.’ 则需要自定义函数
>>> filter(lambda ch: ch in ‘0123456789.’, crazystring) ‘142.0142.’
或者使用正则表达式或循环

posted @ 2016-11-14 16:25  每天进步一点点!!!  阅读(12510)  评论(0编辑  收藏  举报