PHP正则删除字符串中所有中文的程序代码
采用php的正则删除中文
代码如下 | 复制代码 |
/*转换为UTF8 再处理*/ $a = mb_convert_encoding($a, 'UTF-8', 'GB2312'); $a = mb_convert_encoding($a, 'GB2312', 'UTF-8'); |
例子
代码如下 | 复制代码 |
|
简单说明下
x{4e00}-x{9fff} 这个是中文区间(各种文字都有unicode码区间)
/u 表示采用unicode码 进行正则判断
[] 正则标准括号,表示范围[0-3]表示 0,1,2,3, 0到3的意思
匹配html中A标签其实非常的简单我们只要懂一点正则的都可以实现,下面我整理了两个不同方法正则匹配A标签的例子。方法一
代码如下 | 复制代码 |
$a ='<a href="www.111cn.net">百度</a>谷哥<a href="www.111cn.net">谷歌</a><a href="www.111cn.net">雅虎</a>'; 得出结果 Array ( [0] => Array ( [0] => <a href="www.111cn.net">百度</a> [1] => <a href="www.111cn.net">谷歌</a> [2] => <a href="www.111cn.net">雅虎</a> )
) |
方法二
示例如下:
代码如下 | 复制代码 |
$str1 = '<a href=http://www.111cn.net>test</a>'; $str2 = '<a href='http://www.111cn.net'>test</a>'; $str3 = '<a href = "javasccript: href ('test');" target = "_blank" />test</a>'; $regex = '/hrefs*=s*(?:"([^"]*)"|'([^']*)'|([^"'>s]+))/'; preg_match($regex, $str1, $matches); print_r($matches); preg_match($regex, $str2, $matches); print_r($matches); preg_match($regex, $str3, $matches); print_r($matches); 匹配结果: Array ( [0] => href=http://www.111cn.net [1] => [2] => [3] => http://www.111cn.net ) Array ( [0] => href='http://www.111cn.net' [1] => [2] => http://www.111cn.net ) Array ( [0] => href = "javasccript: href ('test');" [1] => javasccript: href ('test'); ) |
/href\s*=\s*(?:"([^"]*)"|\'([^\']*)\'|([^"\'>\s]+))/
思路很巧妙,即:
分两步,先区配a标签,然后再区配a标签里面的链接
例子,字母、数字和汉字
代码如下 | 复制代码 |
if(preg_match("/[ '.,:;*?~`!@#$%^&+=)(<>{}]|]|[|/|\|"||/",$user)){ |
例子,全字母
代码如下 | 复制代码 |
<?php if (mb_ereg("^[w-.]{1,32}$", $str)) { ?> |
附一些常用正则
只能以数字或字母开头和结尾 用户名长度为4~18个字符
代码如下 | 复制代码 |
^[a-za-z0-9]{1}[a-za-z0-9|-|_]{2-16}[a-za-z0-9]{1}$ |
用户名为大写字母小写字母或下划线,并以字母开头,长度为6-20
代码如下 | 复制代码 |
^[a-za-z][wd_]{5,19} |
用户名:包括英文小写、汉字、数字、下划线,不能全部是数字,下划线不能在末尾
代码如下 | 复制代码 |
/^[a-z0-9_u4e00-u9fa5]+[^_]$/g utf-8下 preg_match("/^[a-z0-9_x80-xff]+[^_]$/g",$a); gbk下: preg_match("/^[a-z0-9_".chr(0xa1)."-".chr(0xff)."]+[^_]$/",$a) |
可有中文的用户名验证
代码如下 | 复制代码 |
[a-za-z0-9][u4e00-u9fa5] |
一,下例可以去除额外空白
代码如下 | 复制代码 |
<?php |
二,替换换行符
//php 有三种方法来解决
代码如下 | 复制代码 |
//1、使用str_replace 来替换换行 //2、使用正则替换 //3、使用php定义好的变量 (建议使用) |
代码如下:
代码如下 | 复制代码 |
/* * 获得用户操作系统的换行符,n * @access public * @return string */ function get_crlf() { if (stristr($_SERVER['HTTP_USER_AGENT'], 'Win')) { $the_crlf = 'rn'; } elseif (stristr($_SERVER['HTTP_USER_AGENT'], 'Mac')) { $the_crlf = 'r'; // for old MAC OS } else { $the_crlf = 'n';//权重大一点 www.111cn.net } return $the_crlf; } |
注意:在前台页面显示的时候,用nl2br使换行变成<br>
三,替换回车
代码如下 | 复制代码 |
<?php |
一聚教程小编提醒你,有时我们还需要注意像textarea中的回车换行并不是/r/n之类的而是需要chr(32),chr(13)这样才可以替换的哦。
个人觉得邮箱正则表达式在javascript与php中一样的规则了,只是语法稍有不同,下面我就把在服务器与客户端邮箱验证代码给大家看看。邮箱地址验证有很多方法。在浏览器端,js邮箱验证可以通过正则表达式检测。
代码如下 | 复制代码 |
function isEmail(email) { 或 function validateEmail(elementValue) function checkEmail(mail) { |
调用很简单:
代码如下 | 复制代码 |
|
如果是进行服务器端验证。像php,则最简单的莫过于:
代码如下 | 复制代码 |
$a='/([w._]{2,10})@(w{1,}).([a-z]{2,4})/'; if(preg_match($a,$b)){ |
你要判断一整段字符串是否都匹配就要用断言。如^ $
/^([w._]{2,10})@(w{1,}).([a-z]{2,4})$/
注意头和尾加上了^ $
相关文章
- 这篇文章主要介绍了C#中截取字符串的的基本方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-11-03
- 这篇文章主要介绍了C#开发Windows窗体应用程序的简单操作步骤,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-04-12
- 这篇文章介绍了C#判断字符串是否数字或字母的实例,有需要的朋友可以参考一下...2020-06-25
- 这篇文章主要介绍了PostgreSQL判断字符串是否包含目标字符串的多种方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-02-23
- 这篇文章主要介绍了C++ string常用截取字符串方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-04-25
- 本文通过例子,讲述了C++调用C#的DLL程序的方法,作出了以下总结,下面就让我们一起来学习吧。...2020-06-25
- 本文实例讲述了php字符串按照单词进行反转的方法。分享给大家供大家参考。具体分析如下:下面的php代码可以将字符串按照单词进行反转输出,实际上是现将字符串按照空格分隔到数组,然后对数组进行反转输出。...2015-03-15
- 本文通过两个示例讲解了一下Process类调用外部应用程序的基本用法,并简单讲解了StartInfo属性,有需要的朋友可以参考一下。...2020-06-25
- 这篇文章主要介绍了微信小程序 页面传值详解的相关资料,需要的朋友可以参考下...2017-03-13
- 大概有如下步骤 新建项目Bejs 新建文件package.json 新建文件Gruntfile.js 命令行执行grunt任务 一、新建项目Bejs源码放在src下,该目录有两个js文件,selector.js和ajax.js。编译后代码放在dest,这个grunt会...2014-06-07
- 这篇文章主要介绍了使用list stream:任意对象List拼接字符串操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-09-09
- 这篇文章主要介绍了MySQL 字符串拆分操作(含分隔符的字符串截取),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-22
- 这篇文章主要介绍了C# 16 进制字符串转 int的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下...2020-06-25
- JS中默认中文字符长度和其它字符长度计算方法是一样的,但某些情况下我们需要获取中文字符串的实际长度,代码如下: 复制代码 代码如下: function strLength(str) { var realLength = 0, len = str.length, charCode = -1;...2014-06-07
- 这篇文章主要给大家介绍了一个关于JS正则匹配的踩坑记录,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-04-13
- 这篇文章主要介绍了uniapp微信小程序:key失效的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-01-20
- 这篇文章主要介绍了C#实现字符串转换成字节数组的简单实现方法,仅一行代码即可搞定,非常简单实用,需要的朋友可以参考下...2020-06-25
- 这篇文章主要介绍了PostgreSQL 字符串处理与日期处理操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-01
- 文章介绍一个实用的函数,我们如果用php substr来截取字符在中文上处理的很有问题,今天自己写了一个比较好的中文与英文字符截取的函数,有需要的朋友可以参考下。 ...2016-11-25
- 本文实例讲述了PHP常用的小程序代码段。分享给大家供大家参考,具体如下:1.计算两个时间的相差几天$startdate=strtotime("2009-12-09");$enddate=strtotime("2009-12-05");上面的php时间日期函数strtotime已经把字符串...2015-11-24