PHP利用正则表达式实现手机号码中间4位用星号(*)替换显示功能
因为需要为客户保持隐私,所以手机号码不能完全显示在网站上,但是又不能不显示,所以就很多网站想到了显示但是不完整显示,在上面用星号替换部分显示,其实做到这个很简单,用正则替换显示其中的一部分即可。
Method 1:
function hidtel($phone){ $IsWhat = preg_match('/(0[0-9]{2,3}[\-]?[2-9][0-9]{6,7}[\-]?[0-9]?)/i',$phone); //固定电话 if($IsWhat == 1){ return preg_replace('/(0[0-9]{2,3}[\-]?[2-9])[0-9]{3,4}([0-9]{3}[\-]?[0-9]?)/i','$1****$2',$phone); }else{ return preg_replace('/(1[358]{1}[0-9])[0-9]{4}([0-9]{4})/i','$1****$2',$phone); } }
Method 2:
$num = "13966778888" $str = substr_replace($num,'****',3,4);
实例:
$phonenum = "13966778888"; echo hidtel($phonenum);
最后输出:139****8888
总结
以上所述是小编给大家介绍的PHP利用正则表达式实现手机号码中间4位用星号(*)替换显示,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
相关推荐
-
php使用正则表达式获取字符串中的URL
今天写一个问答系统上线之后发现有很多人发链接了,由于业务部门要我们过滤掉网站地址了,下面我给大家分享一个提取字符串url地址函数,代码如下: $str ='本文实例讲述了php匹配字符串里所有URL地址的方法.http://www.manongjc.com 分享给大家供大家参考'; preg_match_all("/http:[\/]{2}[a-z]+[.]{1}[a-z\d\-]+[.]{1}[a-z\d]*[\/]*[A-Za-z\d]*[\/]*[A-Za-z\d]*/",$st
-
Ajax和PHP正则表达式验证表单及验证码
模式匹配符: \:转义字符 例如:\b转义了b ^:正则表达式开始符号 $:正则表达式结束符号 *:匹配前面的字符出现0次或者n次 +:匹配前面的字符出现1次或者n次 ?:匹配前面的字符出现0次或者1次 .:匹配除了换行符以外的所有单个字符 |:或者的意思,例如x|y 匹配x或者y {n}:匹配前面的n个字符 {n,m}:匹配至少n个最多m个前面字符 [xyz]:匹配中括号里的任意一个字符 [^xyz]:匹配除了中括号里的任意一个字符等价于[0-9] \w:匹配任意一个数字或字母或下划线 等价于
-
PHP正则表达式抓取某个标签的特定属性值的方法
php正则学了一些日子,抓了一些网站的数据,从而发现每次都自己写正则重新抓很麻烦,于是就想写一个抓取特定标签具有特定属性值的接口通用,直接上代码. //$html-被查找的字符串 $tag-被查找的标签 $attr-被查找的属性名 $value-被查找的属性值 function get_tag_data($html,$tag,$attr,$value){ $regex = "/<$tag.*?$attr=\".*?$value.*?\".*?>(.*?)<\
-
PHP利用正则表达式实现手机号码中间4位用星号(*)替换显示功能
因为需要为客户保持隐私,所以手机号码不能完全显示在网站上,但是又不能不显示,所以就很多网站想到了显示但是不完整显示,在上面用星号替换部分显示,其实做到这个很简单,用正则替换显示其中的一部分即可. Method 1: function hidtel($phone){ $IsWhat = preg_match('/(0[0-9]{2,3}[\-]?[2-9][0-9]{6,7}[\-]?[0-9]?)/i',$phone); //固定电话 if($IsWhat == 1){ return preg_
-
ios利用正则表达式判断手机号码格式是否正确的实例
实例如下: //判断手机号码格式是否正确 + (BOOL)valiMobile:(NSString *)mobile { mobile = [mobile stringByReplacingOccurrencesOfString:@" " withString:@""]; if (mobile.length != 11) { return NO; }else{ /** * 移动号段正则表达式 */ NSString *CM_NUM = @"^((13[4-
-
利用正则表达式校验金额最多保留两位小数实例代码
目录 正则表达式校验金额最多保留两位小数,那么必须满足如下条件: 部分正则表达式符号说明: 第一步,小数点之前表达式 第二步,小数点及小数位置 总结 先给出表达式结果:^(([1-9]{1}\d*)|(0{1}))(\.\d{1,2})?$ 有同学留言0识别错误,可用这个:(([1-9]{1}\d*)(.\d{1,2})?)|(0{1}.\d{1,2})思路:1.小数点前非0,则小数位置可有可无: 2.小数点前为0,那么小数位置必有修改于 2022-08-03 不熟悉正则表达式的同学,咋一看,一
-
Java利用正则表达式提取数据的方法
什么是正则表达式 正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它 用以描述在查找文字主体时待匹配的一个或多个字符串.正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配. Java利用正则表达式提取数据 Java正则表达式的用途很广,之前要用到将一大 3M 的 txt 文本切分成多个小文本,用 C# 写的话很简洁,代码也就二十几行,今天用 Java 写了一下,果然,Java 很罗嗦. 切分文件的代码
-
正则表达式实现字符串每4位后自动加空格效果(两种方法)
需求:输入框中输入银行卡号(或其他)时,每4位自动加空格(如下图) 分析 方法一:监控输入框的keyup事件,当value值的长度为4,8,12,16时,插入空格字符串" "(vue中代码片段如下) <input type="text" v-model="bankCard" @keyup="bankCardKeyup"> bankCardKeyup (e) { let self = this // 如果是删除键,则
-
JavaScript利用正则表达式去除日期中的“-”
1.说明 经常会出现这样的情况,页面的日期格式是:YYYY-MM-DD,而数据库中的日期格式是:YYYYMMDD,两者之间需要转换一下,方能传到Java后台查询数据. 通常,这种转化的方法有两种,第一种,将日期字符串先截取,然后拼接:第二种,就是利用正则表达式去掉"-" 相比较而言,第二种方法快捷,不容易出错. 2.实现源码 <%@ page language="java" import="java.util.*" pageEncoding
-
SQL Server中利用正则表达式替换字符串的方法
建立正则替换函数,利用了OLE对象,以下是函数代码: --如果存在则删除原有函数 IF OBJECT_ID(N'dbo.RegexReplace') IS NOT NULL DROP FUNCTION dbo.RegexReplace GO --开始创建正则替换函数 CREATE FUNCTION dbo.RegexReplace ( @string VARCHAR(MAX), --被替换的字符串 @pattern VARCHAR(255), --替换模板 @replacestr VARCHAR
-
利用正则表达式判断一个给定的字符是否是回文
如果给定的字符串是回文,返回true,反之,返回false. 如果一个字符串忽略标点符号.大小写和空格,正着读和反着读一模一样,那么这个字符串就是palindrome(回文). 注意你需要去掉字符串多余的标点符号和空格,然后把字符串转化成小写来验证此字符串是否为回文. 函数参数的值可以为"racecar","RaceCar"和"race CAR". 关键代码: 去掉字符串中的标点符号和空白格.可以用str.replace()+正则表达式匹配. v
-
js利用正则表达式检验输入内容是否为网址
js正则检验输入的是否为网址功能在网页中也是很常见的,友情链接部分.表单填写个人主页的时候,使用JavaScript取验证是否为网址. 这个检验不好写,最好还是使用正则表达式去认证. 规定,输入的东西只能是http://与https://开头,而且必须是网址. 有人说,为何像www.1.com这样的网页不行呢? 这是以免你拿用户输入的东西构造超级链接的时候,a标签中的href属性如果遇不到http://或者https://的东西,那么就会认为是根目录,会在你的网站的网址后面接着写入这个地址再跳转
-
Python利用正则表达式匹配并截取指定子串及去重的方法
本文实例讲述了Python利用正则表达式匹配并截取指定子串及去重的方法.分享给大家供大家参考.具体如下: import re pattern=re.compile(r'\| (\d+) \| (\d+) \|') numset=set() all=''' | 29266795 | 533 | | 29370116 | 533 | | 29467495 | 533 | | 29500404 | 533 | | 29500622 | 533 | | 29515964 | 530 | | 295160
随机推荐
- ext 列表页面关于多行查询的办法
- nodejs如何获取时间戳与时间差
- 利用JavaScript阻止表单提交的两种方法
- 批处理bat计算前N个月第一天的日期
- js+HTML5实现canvas多种颜色渐变效果的方法
- python重试装饰器示例
- FSO的强大功能
- MySQL数据库服务器逐渐变慢分析与解决方法分享
- php引用计数器进行垃圾收集机制介绍
- Android 搜索结果匹配关键字且高亮显示功能
- nodejs服务搭建教程 nodejs访问本地站点文件
- C#实现最简单的文本加密方法
- C#设计模式编程中运用适配器模式结构实战演练
- c#远程html数据抓取实例分享
- 深入理解使用Vue实现Context-Menu的思考与总结
- mysql 8.0.11 安装配置方法图文教程(win10)
- 微信小程序上传文件到阿里OSS教程
- vue如何限制只能输入正负数及小数
- layui switch 开关监听 弹出确定状态转换的例子
- Windows系统中完全卸载MySQL数据库实现重装mysql