python 利用正則表達式提取特殊信息
1、刪除字符串中的 Python注釋
案例:
import re time = "2020-01-01 # 這是一個日期" num = re.sub(r'#.*$', "", time)#以#為分隔,去掉后面的信息 print("這個時間是:", num)
結(jié)果:
這個時間是: 2020-01-01
2、截取某符號前后的內(nèi)容
案例1:
txt = '我的電話是:131-246-XXX19' a = txt.split(':')[0]#0表示符號前 b = txt.split(':')[1]#[-1]和[1]結(jié)果一樣,表示符號后面 print ("a的結(jié)果是:",a) print ("b的結(jié)果是:",b)
結(jié)果:
a的結(jié)果是: 我的電話是 b的結(jié)果是: 131-246-XXX19
案例2:
txt = "I love python . 我熱愛python" text = re.sub(r'\..*$', "", txt)#以.為分隔,\為轉(zhuǎn)義字符,與后面的.區(qū)分開 print("這個截取結(jié)果是:", text)
結(jié)果:
這個截取結(jié)果是: I love python
3、刪除非數(shù)字的字符串
案例:
import re time = "2020-01-01 # 這是一個日期" num = re.sub(r'\D', "", time) print("這個時間是:", num)
結(jié)果:
這個時間是: 20200101
4、只保留中文
案例:
reg = "[^\u4e00-\u9fa5]" text = "好吧!E我aa們$$開始34學(xué)習(xí)--python吧!" print(re.sub(reg, '', text))
結(jié)果:
好吧我們開始學(xué)習(xí)吧
5、只保留中文、大小寫字母和阿拉伯數(shù)字
案例:
reg = "[^0-9A-Za-z\u4e00-\u9fa5]" text = "好吧!E我aa們$$開始34學(xué)習(xí)--python吧!" print(re.sub(reg, '', text))
結(jié)果:
好吧E我aa們開始34學(xué)習(xí)python吧
6、去掉大小寫字母和數(shù)字
案例:
import re txt="Ayouleyang阿~優(yōu)樂-揚" text = re.sub('[a-zA-Z0-9]','',txt) print(text)
結(jié)果:
阿~優(yōu)樂-揚 1
7、去掉某個特殊字符
案列:
import re txt = '阿*a#優(yōu)$樂. :揚 ;:youle+' text = re.sub('[,;;youle: :.;,$*#]+', "", txt)#[]中的符號都會被替換,類似于replace() print(text)
結(jié)果:
阿a優(yōu)樂揚+ 1
8、保留英文,數(shù)字和特殊符號
案例:
reg = "[^0-9A-Za-z\u4e00-]"#只保留英文,數(shù)字和-,u4e00“-”是需要保留的符號 txt = "好吧!我的號碼是131-246-XXX19!::" text = re.sub(reg, '', txt) print(text)
結(jié)果:
131-246-XXX19
總結(jié)
以上所述是小編給大家介紹的python 利用正則表達式提取特殊信息,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
相關(guān)文章
只能是字母或數(shù)字或者是字母和數(shù)字的組合的正則previousSibling
只能是字母或數(shù)字或者是字母和數(shù)字的組合的正則previousSibling...2007-03-03