2024-05-01 22:05:34 发布
网友
我想用regex替换电话中间的数字,但失败了。这是我的密码:
temp= re.sub(r'1([0-9]{1}[0-9])[0-9]{4}([0-9]{4})', repl=r'$1****$2', tel_phone) print temp
在输出中,它始终显示: 1****$2美元
但我想展示一下:131****1234。如何完成?谢谢
我想你是想用****替换中间的四个数字(最后四个数字之前的四个数字)
****
>>> s = "13111111234" >>> temp= re.sub(r'^(1[0-9]{2})[0-9]{4}([0-9]{4})$', r'\1****\2', s) >>> print temp 131****1234
您可能在其他语言的替换字符串中看到了$1。但是,在Python中,使用\1而不是$1。为了正确起见,您还需要在第一个捕获组中包含起始1,以便输出也包含起始1;否则,起始1将丢失。你知道吗
$1
\1
1
我想你是想用
****
替换中间的四个数字(最后四个数字之前的四个数字)您可能在其他语言的替换字符串中看到了
$1
。但是,在Python中,使用\1
而不是$1
。为了正确起见,您还需要在第一个捕获组中包含起始1
,以便输出也包含起始1;否则,起始1
将丢失。你知道吗相关问题 更多 >
编程相关推荐