首页 > 互联资讯 > 建站教程  > 

php用户名正则,用户名和密码正则验证

本文目录一览:

php写出一个验证用户ID的正则表达式

"/^[^x{4e00}-x{9fa5}A-Za-z0-9_-.]+$/u"

用preg_match函数

对于uft-8验证,gbk的也差不多,就中文验证可能不一样

2到24位就不好说了,尤其中文,在utf-8下,字符位数不一样,php中用使用mb_strlen来计算长度,中文都算一个字符,在使用mb_strlen函数时首先应该设置编码字符集,mb_internal_encoding('utf-8'),或者,在mb_strlen中第二个参数给出编码集

中文utf-8在mysql中也是算一个字符

PHP 注册表单的正则验证

我举个例子撒

假如你表单是这么写

用户名: input name="username" value="" / 注意name为 username

表单用POST方式提交 即form 的method 属性为post

在PHP中这么验证,

假设我要这个用户名只能是 10-32位 数字英文下划线组合,且第一位必须字母

empty($_POST['username'])  $_POST['username'] = '';

if(!preg_match('/^[a-zA-Z0-9_]{10,32}$/',$_POST['username'])) exit('用户名不合法');

if(!preg_match('/^[a-zA-Z]/',$_POST['username'])) exit('第一位必须是字母');

正则表达式就是 两个/中间的部分了

^表示前面没有任何字符了

$表示结尾没有任何字符了

[a-zA-Z0-9_]表示匹配规则集

每个字符都必须 是 小写字母a-z 或 大写字母A-Z 或  数字0-9 或者下划线_  其中表示转义符 用于转义一些特殊字符

{16,32} 表示匹配次数为 16次到32次,少于16 或多于32 均为不合格,如果不限制长度 可以直接写为  +  即 [a-zA-Z0-9]+ 或者指定一个长度 {10}

关于其他的表达式 百度搜索下就行了,都是通用的

例如

匹配手机号 /^1[0-9]{10}$/

php 用户名和密码 正则表达式

/^[A-Za-z0-9_u4e00-u9fa5]{3,15}$/ 用户名

/^[^u4e00-u9fa5s]{6,20}$/ 密码

php正则表达式验证用户名

//中文和英文结合而且6-20字符

$preg='/^[a-zA-Zx{4e00}-x{9fa5}]{6,20}$/u';

//英文、数字、下划线6-20位字符

$preg='/^[w_]{6,20}$/u';

过滤非法字符防止SQL注入漏洞,只能另说,对不同的接口和参数有针对性的过滤,没有通用的正则。

php 判断 用户名 英文或者数字

用正则来判断,如检查是否数字的代码: 1 2 if(preg_match("/^d*$/",$fgid)) echo('是数字'); else echo('不是数字'); 验证由26个英文字母组成的字符串:^[A-Za-z]+$ 验证由26个大写英文字母组成的字符串:^[A-Z]+$ 验证由数字和26个英文字母组成的字符串:^[A-Za-z0-9]+$

用PHP写用户名验证..注意我的正则表达式用法是否正确

$pattern="/w/";这里有问题,一个字符啊。

得用/^w+$/哦,/^[_a-zA-Z0-9]+$/也行

其实字符个数你都可以写到正则里面不用再额外判断f($newname==""||$newname.length6||A.lenth16||!pattern.test(A))

写成

$pattern="/^[a-zA-Z][_a-zA-Z0-9]{5,15}$/"(6-16位字符,字母开头,只包含字母数字下划线)然后只用

f($newname==""||!pattern.test(A))来判断就可以了


php用户名正则,用户名和密码正则验证由讯客互联建站教程栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“php用户名正则,用户名和密码正则验证