再写一个比较简单的替换。
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
第一个井号没什么特殊含义,就是字符串那个井号开始,后面.*,匹配所有字符,全给替换成""了
第二个,\D是匹配非数字的字符,把非数字的字符替换成了""
可以不是空,替换成其他字符也行,写上内容就可以了
正则比较强大,python还有一种替换的方法,replace,比较简单,但是没这么强
phone = "2004-959-559 # 这是一个电话号码"
num=phone.replace('-','')
num=num.replace('号码','')
print("电话号码 : ", num)
输出:
电话号码 : 2004959559 # 这是一个电话
比较死板,只能替换固定字符,第一步去掉了-,再后面就是去掉num的号码两个字,一步一步的换