[問題] 關於從字串中抽取數字

看板Python作者 (kynix)時間14年前 (2010/12/09 13:19), 編輯推噓2(204)
留言6則, 5人參與, 最新討論串1/1
各位先進好 想請教一個問題 敝人寫程式時需要一個濾掉字串內除了數字外的字元的功能 就是針對一個字串(內容不定) 取出裡面的數字並依在原字串的位置順序排列 最後成一個只剩數字的字串 ex:"12dff412df54" 結果:"1241254" 在google找了很久都沒找到比較簡易的方法 大都是抓出來後如果數字有被文字分開就會變成序列 沒辦法直接組合出現一個字串就好了 請問有比較簡易的方法嗎? 先謝謝大家了!!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.40.68.170

12/09 21:21, , 1F
''.join([x for x in 'ad32499adsfasd3' if x.isdigit()])
12/09 21:21, 1F

12/09 21:38, , 2F
太謝謝樓上了,沒想到有這種用法,看來還需要多學學,感恩
12/09 21:38, 2F

12/09 23:49, , 3F
re.sub("[^0-9]", "", "12dff412df54")
12/09 23:49, 3F

12/10 01:36, , 4F
filter(str.isdigit, "12dff412df54")
12/10 01:36, 4F

12/10 19:00, , 5F
在執行上好像用filter會稍快一點
12/10 19:00, 5F

12/17 09:55, , 6F
感謝大家的幫忙 小弟感恩~
12/17 09:55, 6F
文章代碼(AID): #1D0DTT4O (Python)