当前位置:首页 » 编程语言 » php正则匹配邮箱

php正则匹配邮箱

发布时间: 2022-08-29 03:08:06

php正则表达式:一个匹配邮箱的正则表达式问题

尼玛,你这个正则前面那个怎么可能匹配得到?
我就说我看了那么久都看不出来你是怎么匹配到第一个的,
我这测了一下,瞎了我的眼啊。。
你自己看看:
<?php
$mid_data="[email protected]";
preg_match("/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/",$mid_data,$matched);
echo "ok:".$matched[0];
$mid_data1="[email protected]";
preg_match("/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/",$mid_data1,$matched);
echo "<br>ok2:".$matched[0];
?>
这是结果:
ok:[email protected]
ok2:

Ⅱ php正则表达式,去掉邮箱中间的数并返回新的邮箱地址应该怎么写

最简单的方法:

function change_email($email) {
$email= substr($email, 0, 11);
$email= $email."@txt.ice.com";
return $email;
}

Ⅲ php 如何用正则表达式匹配一个邮箱格式 邮箱要求只能出现大小写字母 一个@ 还可以出现连字符-和

$pattern="/^([0-9A-Za-z\-_\.]+)@([0-9a-z]+\.[a-z]{2,3}(\.[a-z]{2})?)$/i";

以上为php代码


正常情况下,邮箱不应该支持单引号的

Ⅳ php正则表达式邮箱

你这个正则是能匹配的,匹配到这样这部分 '[email protected]'
前面部分的1412424545645454不匹配,所以还是合法的。
你想要匹配一整段正确可以改成这样
$a='/^([\w\.\_]{2,10})@(\w{1,}).([a-z]{2,4})$/';

Ⅳ 字符串:必须为数字,6位 电子邮箱:格式 手机号 用php正则验证实现

PHP常用表达式用法
1.匹配正整数:/^[1-9]\d*$/
2.匹配非负整数(正整数+0):/^\d+$/
3.匹配中文:/^[\x{4e00}-\x{9fa5}]+$/u
4.匹配Email:/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/
5.匹配网址URL:(((f|ht){1}(tp|tps)://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)
6.匹配字母开头,5-16字符,字母数字下划线:/^[a-zA-Z][a-zA-Z0-9_]{4,15}$/
7.匹配数字,字母,下划线,中文:/^[\x{4e00}-\x{9fa5}A-Za-z0-9_]+$/u
8.匹配中国邮政编码:/^[1-9]\d{5}$/
9.匹配IP地址:/\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b/
10.匹配中国大陆身份证:/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}(\d|x|X)$/

Ⅵ php正则表达式怎么验证邮箱格式

邮箱验证正则:
[\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?
直接用preg_match ()就行了
推荐直接用bootstrapvalidate,更方便。

Ⅶ PHP正则表达式如何检测现有的正确邮箱域名后缀

这个是IT群里的朋友!我不去群里了,在这里帮你把问题解决了吧!

其实严格说来,正则表达式只是一个模型匹配,所以直接使用模型匹配时我们有一个高通原理,也就是说匹配出来的内容是要大于你所需要的内容。就比此题来说,后边可以匹配任何一个合规则的内容,而不可能精确地直接是你想要的内容——这就是高通,如果非要匹配到你想要的内容,使用正则运算有时是非常不合适的!所以这里不建议你使用这方式,或者是部分使用这种方式的形式。

高通就是通过你不全是你想要的,但你想要的一定全在里边。

那么,为什么不考虑使用ajax的方式呢?后台自己设计一会数据库,@前半段使用正则表这式,扣后半段直接使用数据存储的内容,这样可以精确到任何一个你想要的。

因为这里你想要的与不想要的其实也很模糊,你也不知道ckk这个域名在以后是不会被启用!那么你可以使用数据库方式,由管理员自由添加!不用去修改那将来的表达式的!

但事实上很少人用这种方式——他们都在使用注册时邮箱认证的方式,也就是说,发到你邮箱里一封信,辅助你完成注册,这种情况虽然是高通,其他实他只是方便用户能输入正确,而不是要的确信数据,任何设计都要记着这句话——任何客户端的信息都是不可信的!就算用JS完成了正则,那么如果对方有意屏掉您的JS这十分容易的!所以你的正则根本不是用来验证,而是方便用户。

正是这种原因,高通的理由也是其存在的一个原因!就算使用了我说的数据库,利用ajax来检查,那么别人照样可以让你的ajax不工作,而且,不是服务器通过了,邮箱就一定有人注册的!所以从这方面上来讲,数据库的实现意义也不大!

根据js的特点,客户端的验证没有必要太这于麻烦,就算是服务端的验证,建议你的也只采用这种方式即可。没有使用数据库的必要的——这个代价与达到的效果是不成比例的!

说完了,其实等于我也不解决!

Ⅷ PHP 帮忙写个正则表达式 判断QQ邮箱格式

$qqmail='[email protected]';
if(preg_match('|^[1-9]d{4,10}@qq.com$|i',$qqmail)){
echo$qqmail,'是qq邮箱';
}else{
echo$qqmail,'不是qq邮箱';
}

Ⅸ 对php中正则表达式验证邮箱代码的疑惑,求高人指点

^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$
这个正则表达式的写法是正确的,但是邮箱地址最后小数点后面的字母只能是2或者3位,比如com或者cn,你的例子aaaaaa太多了,呵呵

[a-z]{2,3}$ 这个表示结尾只能是2或者3位字母,不是至少2位

z后面那个减号,那个表示中横杠,比如用户名字是aaa-aaa

如果用你举得例子

可以写成

^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{1,20}$

这样表示 结尾的字母可以是1到20位

热点内容
java代码自动编译 发布:2025-01-16 19:58:14 浏览:313
编程很困难 发布:2025-01-16 19:58:09 浏览:673
gg登录源码 发布:2025-01-16 19:58:07 浏览:292
微信收藏表情文件夹 发布:2025-01-16 19:28:57 浏览:15
ra服务器搭建 发布:2025-01-16 19:28:12 浏览:18
javaftp读取 发布:2025-01-16 19:28:02 浏览:185
乐课上传作业 发布:2025-01-16 19:24:58 浏览:936
哈尔滨python培训 发布:2025-01-16 19:19:30 浏览:915
java对象与线程 发布:2025-01-16 19:14:59 浏览:897
二维码源码vc 发布:2025-01-16 19:14:59 浏览:774