首页 > 编程 > PHP > 正文

php 提取字符串中指定内容及将手机号内容替换

2019-11-06 08:56:26
字体:
来源:转载
供稿:网友

1、提取字符串中指定<msg></msg>之间的内容,并将手机号、身份证等敏感信息替换为******:

php程序:

<?php

$str='msg 1.4 N 18

basemsgid:0from:121279488from_sub:0is_muti_msg:0is_redirecting:0method:tmsg_requestmsgid:0nextsubid:0sessionid:nullsubid:0

<msg><font n="宋体" s="10" b="0" i="0" ul="0" c="0" cs="134"/><text c="王经理:13443212322 李经理:13443212321 身份证: 3312831938012123736 欢迎您来化妆美容美发学校咨询,我是在线客服老师!请加我的微信 &amp;amp;nbsp;13127003432. &amp;amp;nbsp; &amp;amp;nbsp; 或者是拨打全国免费热线 &amp;amp;nbsp;400-0212-340. 也可以在这里直接和老师对话 &amp;amp;nbsp;。有关于学习的问题就直接问就可以了。"    /></msg>';

if(PReg_match('/<msg>(.*?)<//msg>/i', $str, $matches)) {   print_r($matches);

   echo '我要截取的内容:' . $matches[1] . "/n";

  $content = preg_replace('/([0-9]{11,})|([0-9]{3,4}-[0-9]{7,10})|([0-9]{3,4}-[0-9]{2,5}-[0-9]{2,5})/', '******', $matches[0]);

}

echo '替换后的内容为: ' . $content; 

?>

执行php脚本:/opt/lampp/bin/php mat.php 

输出:

Array(    [0] => <msg><font n="宋体" s="10" b="0" i="0" ul="0" c="0" cs="134"/><text c="王经理:13443212322 李经理:13443212321 身份证: 3312831938012123736 欢迎您来化妆美容美发学校咨询,我是在线客服老师!请加我的微信 &amp;amp;nbsp;13127003432. &amp;amp;nbsp; &amp;amp;nbsp; 或者是拨打全国免费热线 &amp;amp;nbsp;400-0212-340. 也可以在这里直接和老师对话 &amp;amp;nbsp;。有关于学习的问题就直接问就可以了。"    /></msg>    [1] => <font n="宋体" s="10" b="0" i="0" ul="0" c="0" cs="134"/><text c="王经理:13443212322 李经理:13443212321 身份证: 3312831938012123736 欢迎您来化妆美容美发学校咨询,我是在线客服老师!请加我的微信 &amp;amp;nbsp;13127003432. &amp;amp;nbsp; &amp;amp;nbsp; 或者是拨打全国免费热线 &amp;amp;nbsp;400-0212-340. 也可以在这里直接和老师对话 &amp;amp;nbsp;。有关于学习的问题就直接问就可以了。"    />)

我要截取的内容:<font n="宋体" s="10" b="0" i="0" ul="0" c="0" cs="134"/><text c="王经理:13443212322 李经理:13443212321 身份证: 3312831938012123736 欢迎您来化妆美容美发学校咨询,我是在线客服老师!请加我的微信 &amp;amp;nbsp;13127003432. &amp;amp;nbsp; &amp;amp;nbsp; 或者是拨打全国免费热线 &amp;amp;nbsp;400-0212-340. 也可以在这里直接和老师对话 &amp;amp;nbsp;。有关于学习的问题就直接问就可以了。"    />

替换后的内容为: <msg><font n="宋体" s="10" b="0" i="0" ul="0" c="0" cs="134"/><text c="王经理:****** 李经理:****** 身份证: ****** 欢迎您来化妆美容美发学校咨询,我是在线客服老师!请加我的微信 &amp;amp;nbsp;******. &amp;amp;nbsp; &amp;amp;nbsp; 或者是拨打全国免费热线 &amp;amp;nbsp;******. 也可以在这里直接和老师对话 &amp;amp;nbsp;。有关于学习的问题就直接问就可以了。"    /></msg>


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表