正则表达式验证中文代码

str = '中华人民共和国123456789abcdefg';
echo preg_match("/^[u4e00-u9fa5_a-za-z0-9]{3,15}",strname);

运行一下上面这段代码,看会有什么提示信息?
warning: preg_match(): compilation failed: pcre does not support l, l, n, p, p, u, u, or x at offset 3 in f:www.111cn.netphp教程test.php on line 2

原来,php正则表达式中不支持下列 perl 转义序列:l, l, n, p, p, u, u, or x

在 utf-8 模式下,允许用"x{...}",花括号中的内容是表示十六进制数字的字符串。原来的十六进制转义序列 xhh 如果其值大于 127 的话则匹配了一个双字节 utf-8 字符。
所以,可以这样来解决preg_match("/^[x80-xff_a-za-z0-9]{3,15}",strname);
方法一
<script>
function ischinese(temp)
{
var re = /[^u4e00-u9fa5]/;
if(re.test(temp)) return false;
return true;
}
alert(ischinese("中文"));
</script>

方法二

function   checkischinese(str)  
{  
//如果值为空,通过校验  
if   (str   ==   "")  
return   true;  
var   pattern   =   /^([u4e00-u9fa5]|[ufe30-uffa0])*$/gi;  
if   (pattern.test(str))  
return   true;  
else  
return   false;  
}//~~~  
/**  
*   计算字符串的长度,一个汉字两个字符  
*/  
string.prototype.reallength   =   function()  
{  
return   this.replace(/[^x00-xff]/g,"**").length;  
}  

时间: 2024-09-25 12:56:28

正则表达式验证中文代码的相关文章

几款正则表达式验证邮箱代码

在我们做网页时,经常会用到收集用户信息,我们就会碰到验证邮箱是吧,这里为了提供用户体验我们就会用js先作处理再用php教程,jsp教程,asp教程,.net等来处理.下面我们来看几款正则表达式验证邮箱代码吧. 验证邮箱代码一 function is_email($email) { return strlen($email) > 6 && preg_match("/^[w-.]+@[w-.]+(.w+)+$/", $email); } echo is_email($

JavaScript正则表达式验证中文实例讲解_正则表达式

JavaScript经常会验证中文,这里提供两个例子: Javascript代码: 复制代码 代码如下: /** *A simple example */ function ischinese(temp){ var re = /[^u4e00-u9fa5]/; if(re.test(temp)) return false; return true; } <p>/** *校验字符串是否为中文 *返回值: *如果为空,定义校验通过, 返回true *如果字串为中文,校验通过, 返回true *如果

JavaScript正则表达式验证中文实例讲解

JavaScript经常会验证中文,这里提供两个例子: Javascript代码: 复制代码 代码如下: /** *A simple example */ function ischinese(temp){ var re = /[^u4e00-u9fa5]/; if(re.test(temp)) return false; return true; } <p>/** *校验字符串是否为中文 *返回值: *如果为空,定义校验通过, 返回true *如果字串为中文,校验通过, 返回true *如果

JS正则表达式验证数字代码_javascript技巧

复制代码 代码如下: <script type="text/javascript">     function validate(){       var reg = new RegExp("^[0-9]*$");       var obj = document.getElementById("name");    if(!reg.test(obj.value)){        alert("请输入数字!");

JavaScript 正则表达式验证函数代码_正则表达式

利用正则表达式判断是否是0-9的阿拉伯数字 复制代码 代码如下: function regIsDigit(fData) { var reg = new RegExp("^[0-9]$"); return (reg.test(fData)); } 利用这则表达式获取字符串的长度 复制代码 代码如下: function regDataLength(fData) { var valLength = fData.length; var reg = new RegExp("^[\u03

js正则表达式验证邮箱代码

下面是一个验证电子邮件的正则表达式  代码如下 复制代码 var re = /^w+([.-]?w+)*@w+([.-]?w+)*(.w{2,3})+$/ ; 例  代码如下 复制代码 <PRE class=html name="code"><div> 请输入一个有效的邮箱:<br /> <input type="text" size=18 id="email" onFocus="clearFo

JavaScript 正则表达式验证函数代码

利用正则表达式判断是否是0-9的阿拉伯数字 复制代码 代码如下: function regIsDigit(fData) { var reg = new RegExp("^[0-9]$"); return (reg.test(fData)); } 利用这则表达式获取字符串的长度 复制代码 代码如下: function regDataLength(fData) { var valLength = fData.length; var reg = new RegExp("^[\u03

PHP中用正则表达式验证中文的问题

$str = '中华人民共和国123456789abcdefg';echo preg_match("/^[\u4e00-\u9fa5_a-zA-Z0-9]{3,15}$",$strName); 运行一下上面这段代码,看会有什么提示信息?Warning: preg_match(): Compilation failed: PCRE does not support \L, \l, \N, \P, \p, \U, \u, or \X at offset 3 in F:\wwwroot\ph

PHP 正则表达式验证中文的问题_正则表达式

$str = '中华人民共和国123456789abcdefg'; echo preg_match("/^[\u4e00-\u9fa5_a-zA-Z0-9]{3,15}$",$strName); 运行一下上面这段代码,看会有什么提示信息? Warning: preg_match(): Compilation failed: PCRE does not support \L, \l, \N, \P, \p, \U, \u, or \X at offset 3 in F:\wwwroot\