本篇教你如何过滤高亮显示非法字符:

//我只是做一个测试,如果再用类似tmd的字符串,一定要注意,如果字符串中的字符出现在$StartReplaceHtml或者$EndReplaceHtml中,你需要修改下面的preg_replace中的规则

$CheckedMessage="Hello!!他X的..他....X...的....How are you m d ";     //the message to be checked

echo $CheckedMessage."
";

$CheckedWords=array("他X的","tmd");//要过滤的非法字符,如果你需要把单个的字符也过滤,比如:他ererX000的过滤出来他,X,的,你就没必要把过滤字符设置成"他X的"只要设置成$CheckedWords=array("他","X","的");就可以了

$StartReplaceHtml="";

$EndReplaceHtml="";

$CheckOther= true;//设置标示位,是否显示单个的字符,如果设置成true,下面的if(strstr……)就不需要了

for($i=0;$i

if(strstr($CheckedMessage,$CheckedWords[$i])){ //此处可去掉

$CheckedMessage=eregi_replace($CheckedWords[$i],$StartReplaceHtml.$CheckedWords[$i].$EndReplaceHtml,$CheckedMessage);//如果只过滤诸如"他X的"字符串(是字符串,不是单个字符),可以直接写这句,同时把$CheckOther设置成false

}

if($CheckOther == true){

$CharStringLength = strlen($CheckedWords[$i]);

for($j=0;$j

$AssumeLength=1;//假定截取长度

if(ord(substr($CheckedWords[$i],$j,$AssumeLength))>0xa0){//如果汉字,假定长度加一

$AssumeLength++;

}

$SubstrChar = substr($CheckedWords[$i],$j,$AssumeLength);

$CheckedMessage=preg_replace("/(?中的t不会被替换,如果需要过滤掉在$StartReplace或者在$EndReplaceHtml中的的字符,需要修改规则,否则的话将会出现乱码

if($AssumeLength!=1){//如果当前截取字符为汉字

$j++;

}

}

}

}

echo $CheckedMessage;

//只是一个简单的测试,希望对你有所帮助,希望你能举一反三,好运!

?>

html提交提示非法字符串,教你如何过滤高亮显示非法字符相关推荐

  1. 链接提交提示安全验证,网站辅助快排不行了吗?

    相信观看冬镜的小伙伴们就会发现,近段时间我很少在做SEO优化,或者写SEO相关的教程文章,确实自从去年中旬开始深度研究百家号后,对网站SEO优化方面的消息关注度有所下降,最近这几天在做第三方平台优化的 ...

  2. git提交提示workspace.xml出现conflicted

    问题:在github上管理项目,多次提交以后提交提示workspace.xml出现conflicted 原因:Android项目在根目录的.gitignore文件中没有添加.idea文件夹忽略. 解决 ...

  3. 华创期货:教您识别合法和非法期货区别曝光骗局远离亏损

    华创期货:教您识别合法和非法期货区别曝光骗局远离亏损 一.合法的期货交易场所和期货品种 (一)合法的期货交易场所 合法的期货交易场所应当经中国证监会批准,并接受其监督管理,当前主要是期货交易所.按照& ...

  4. 字符串转换成整数,通配符的字符串匹配问题

    http://blog.csdn.net/v_july_v/article/details/9024123#comments 前言 之前本一直想写写神经网络算法和EM算法,但写这两个算法实在需要大段大 ...

  5. 找出字符串中第一个不重复的字符

    找出字符串中第一个不重复的字符 leetcode原题地址 我的解决方法 将字符串转换成字符数组 使用两层循环遍历,最终根据第二层循环退出时的下标值来判断是否是不重复的字符 我的代码: public i ...

  6. java中判断字符串实际长度(中文2个字符,英文1个字符)的方法,包含中英文符号

    java中判断字符串实际长度(中文2个字符,英文1个字符)的方法,包含中英文符号 介绍 数据库中很多字段都会限制长度,为了方便用户使用,在前端界面给出限制长度的提示,看网上很多写的获取字符串长度都没有 ...

  7. python代码使用正则化模块re检查字符串是否只含有要求指定的字符

    python代码使用正则化模块re检查字符串是否只含有要求指定的字符 compile():正则表达式被编译成模式对象,模式对象具有用于各种操作的方法,如搜索模式匹配或执行字符串替换. search() ...

  8. 如何判断一个字符串在JavaScript中是否包含某个字符?

    本文翻译自:How to tell if a string contains a certain character in JavaScript? I have a page with a textb ...

  9. 如何大写字符串中每个单词的第一个字符

    Java中是否内置了一个函数,该函数可以大写字符串中每个单词的第一个字符,而不会影响其他单词? 例子: jon skeet - > Jon Skeet miles o'Brien > Mi ...

最新文章

  1. 【Python】随机函数
  2. 死磕Java并发:J.U.C之Java并发容器:ConcurrentLinkedQueue
  3. 用python操作mysql数据库(之批量插入数据)
  4. python无条件跳转_python按按钮实现界面跳转_python实现界面跳转 - CSDN
  5. Kafka简介与消息队列
  6. 洛谷 P2622 关灯问题II (状态压缩+BFS)
  7. WPF 获取程序路径的一些方法,根据程序路径获取程序集信息
  8. java test log4j main_Java 为程序创建日志系统
  9. 利用LFW对人脸识别模型进行精度评测
  10. JDK1.8API文档中文版和英文版下载
  11. 20175212童皓桢 实验三敏捷开发与XP实践实验报告
  12. Matlab(2)基本操作与矩阵输入
  13. 用于ip伪装身份的网络爬虫
  14. 【实例间对比】ICE: Inter-instance Contrastive Encoding for Unsupervised Person Re-identification论文笔记
  15. 神经网络训练怎么看收敛,神经网络收敛的定义是
  16. mysql管理员权限哪个表_Mysql 用户权限管理(权限列表)
  17. delphi 创建DBASE和FOXPRO两类DBF数据文件的差异
  18. GPS从入门到放弃(一)、GPS 定位原理
  19. vue查看所有的路由信息
  20. ubuntu中使用vi编辑无法使用上下左右移动键的处理方式

热门文章

  1. Leetcode 792. 匹配子序列的单词数
  2. 小学校园门户网站建设方案
  3. 移动磁盘显示无法访问数据错误(循环冗余检查)的文件恢复方法
  4. python写一个自动登录脚本_python实现自动登录
  5. Gesture Recognizers与触摸事件分发
  6. qemu-kvm虚拟机性能优化
  7. aes128 cmac java_AES-与基于AES-的CMAC.doc
  8. 在 PyCharm 2017.2.3 中设置 Anaconda 5.0.0 中配置的多Python环境
  9. 外边剧自动html怎么写,问题写剧本的HtmlUnit为YUI形式提交
  10. word文档转html在线预览Demo