我有一個日誌文件,我試圖刪除除數字(0-9)之外的所有不需要的文本。我能夠使用string.replace('','')函數來刪除所有內容並獲得所需的內容,但是,在一些地方,我仍然有一個空白區域,後面跟着一些文字,串。使用字符串替換空格後跟帶空格的文本替換
例如。我能夠從
ansd: 12345,43556
然而
得到12345
,我仍然是在形式
12345 hdjhdjf dfdfd "dfd".
誰能幫助我瞭解如何使用替代這一特定問題的一些元素?
我有一個日誌文件,我試圖刪除除數字(0-9)之外的所有不需要的文本。我能夠使用string.replace('','')函數來刪除所有內容並獲得所需的內容,但是,在一些地方,我仍然有一個空白區域,後面跟着一些文字,串。使用字符串替換空格後跟帶空格的文本替換
例如。我能夠從
ansd: 12345,43556
然而
得到12345
,我仍然是在形式
12345 hdjhdjf dfdfd "dfd".
誰能幫助我瞭解如何使用替代這一特定問題的一些元素?
>>> import re
>>> re.compile('[^\d]*(\d+)[^\d]*').findall('12345 hdjhdjf dfdfd "dfd".')
['12345']
>>> re.compile('[^\d]*(\d+)[^\d]*').findall('ansd: 12345,43556')
['12345']
編輯 - 這個怎麼樣?
>>> import re
>>> re.compile('([^\d]*([0-9]+)[^\d]*)+').findall('12345 hdjhdjf dfdfd "dfd" 12333.')
[('12333', '12333')]
>>>
或者到子網的所有非數字與空格
>>> import re
>>> re.sub('[^\d]', ' ', '12345 hdjhdjf dfdfd "dfd" 12333.')
'12345 12333 '
或者到子網所有的數字與空格
>>> import re
>>> re.sub('[0-9]', ' ', '12345 hdjhdjf dfdfd "dfd" 12333.')
' hdjhdjf dfdfd "dfd" .'
>>>
它始終不是相同的字符串,它們是字符串中的不同元素。我需要一個更通用的形式,我可以用它來擺脫下面提到的格式。 (digits)(whitespaces)(text a-z)(。,:「」) – user2436752
再次看。帶字符串的部分應該是一個變量,正則表達式是\ d – beiller
的部分我很抱歉,我認爲,我說我的問題的方式不合適。我有一個由大量ID組成的字符串。有幾個ID不是我需要它們的格式。 贊,12345 dfsdfsdf dsgfsg「asfda」。 34543223 diosoidfh jdshfoshdo_sdjfk。 76857 jkfhdjhdfj 我需要從字符串中的整個元素中分離出數字,並用空格替換它。 – user2436752
我編輯了自己的問題,以改善格式...請檢查以確保我沒有意外地改變了您想要提問的內容。 – bdesham