Python 的re模塊提供了re.sub用於替換字符串中的匹配項。
re.sub(pattern, repl, string, count=0, flags=0)
pattern : 正則中的模式字符串。
repl : 替換的字符串,也可為一個函數。
string : 要被查找替換的原始字符串。
count : 模式匹配后替換的最大次數,默認 0 表示替換所有的匹配。
flags : 編譯時用的匹配模式,數字形式。
前三個為必選參數,后兩個為可選參數。
#!/usr/bin/python3
import re
phone = "2004-959-559 # 這是一個電話號碼" # 刪除注釋
num = re.sub(r'#.*$', "", phone)
print ("電話號碼 : ", num) # 移除非數字的內容
num = re.sub(r'\D', "", phone)
print ("電話號碼 : ", num)
結果為:
電話號碼 : 2004-959-559
電話號碼 : 2004959559