python 利用正則表示式提取特殊資訊
阿新 • • 發佈:2020-01-09
1、刪除字串中的 Python註釋
案例:
import re time = "2020-01-01 # 這是一個日期" num = re.sub(r'#.*$',"",time)#以#為分隔,去掉後面的資訊 print("這個時間是:",num)
結果:
這個時間是: 2020-01-01
2、擷取某符號前後的內容
案例1:
txt = '我的電話是:131-246-XXX19' a = txt.split(':')[0]#0表示符號前 b = txt.split(':')[1]#[-1]和[1]結果一樣,表示符號後面 print ("a的結果是:",a) print ("b的結果是:",b)
結果:
a的結果是: 我的電話是 b的結果是: 131-246-XXX19
案例2:
txt = "I love python . 我熱愛python" text = re.sub(r'\..*$',txt)#以.為分隔,\為轉義字元,與後面的.區分開 print("這個擷取結果是:",text)
結果:
這個擷取結果是: I love python
3、刪除非數字的字串
案例:
import re time = "2020-01-01 # 這是一個日期" num = re.sub(r'\D',time) print("這個時間是:",num)
結果:
這個時間是: 20200101
4、只保留中文
案例:
reg = "[^\u4e00-\u9fa5]" text = "好吧!E我aa們$$開始34學習--python吧!" print(re.sub(reg,'',text))
結果:
好吧我們開始學習吧
5、只保留中文、大小寫字母和阿拉伯數字
案例:
reg = "[^0-9A-Za-z\u4e00-\u9fa5]" text = "好吧!E我aa們$$開始34學習--python吧!" print(re.sub(reg,text))
結果:
好吧E我aa們開始34學習python吧
6、去掉大小寫字母和數字
案例:
import re txt="Ayouleyang阿~優樂-揚" text = re.sub('[a-zA-Z0-9]',txt) print(text)
結果:
阿~優樂-揚 1
7、去掉某個特殊字元
案列:
import re txt = '阿*a#優$樂. :揚 ;:youle+' text = re.sub('[,;;youle: :.;,$*#]+',txt)#[]中的符號都會被替換,類似於replace() print(text)
結果:
阿a優樂揚+ 1
8、保留英文,數字和特殊符號
案例:
reg = "[^0-9A-Za-z\u4e00-]"#只保留英文,數字和-,u4e00“-”是需要保留的符號 txt = "好吧!我的號碼是131-246-XXX19!::" text = re.sub(reg,txt) print(text)
結果:
131-246-XXX19
總結
以上所述是小編給大家介紹的python 利用正則表示式提取特殊資訊,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對我們網站的支援!
如果你覺得本文對你有幫助,歡迎轉載,煩請註明出處,謝謝!