当前位置:首页 » 编程语言 » php正则表达式手机

php正则表达式手机

发布时间: 2024-09-01 07:47:00

㈠ 求php搜索百度结果的正则表达式

<?php
//手机网络搜索
$key="电脑";
$url='http://m..com/s?word='.$key;
$result=file_get_contents($url);
$pattern='#class="resitem".*?<a.*?href="(.*?)".*?>(.*?)</a>#si';
preg_match_all($pattern,$result,$matches);

echo'<pre>';
print_r($matches[1]);
print_r($matches[2]);

//PC网络搜索
$key="电脑";
$url='http://www..com/s?word='.$key;
$result=file_get_contents($url);
$pattern='#class="result.*?class="t".*?<a.*?href="(.*?)".*?>(.*?)</a>#si';
preg_match_all($pattern,$result,$matches);

echo'<pre>';
print_r($matches[1]);
print_r($matches[2]);

//说明:(分析PC版)
//正则匹配首先要分析HTML结构,锁定循环部分,<tableid="?"class="result...></table>
//然后取得最简锚点,class="result(这里没有后面的",因为存在class="result-op"这种)
//接下来再对循环内部进行取锚点,class="result...<a...href="..."...>...</a>
//而在整个result中可能存在多种<a.*?href="(.*?)".*?>(.*?)</a>这样的格式,
//因此找到依赖class="t",得到class="result...class="t"...<a...href="..."...>...</a>
//过滤掉其他部分,留下我们想要的内容。
//正则中间的.*?就是用来屏蔽无关内容(...部分),这部分内容对于我们的结果不会造成影响
//而我们需要的链接(href="【...】")和标题(<a..>【...】</a>)则可以使用子模式,
//从而可以在匹配结果中顺序取出,子模式是加括号。
//最后替换...成.*?,需要获取数据的加上括号(),则得到正则表达式:
//'#class="result.*?class="t".*?<a.*?href="(.*?)".*[问号]>(.*?)</a>#si'
//注:?>注释时连在一起写会语法错误,使用时请将[问号]换回来
//End_php

㈡ php 同时验证电话号码和手机号码的正则表达式,请写下号码格式

悬赏也太低了点吧: 提供一个吧,追加悬赏啊。。。
preg_match('%^(?:(?:0[0-9]{2,3}[0-9]{7,8})|(?:1[3|4|5|8][0-9]{9}))$%', $subject,$c);
var_mp($c);

㈢ PHP提取字符串中的手机号正则表达式怎么写

"/^[0-9]{11}/"

㈣ PHP常用正则表达式汇总

1、w就是匹配字母或数字或下划线或汉字,+则与*差不多,区别是+包括重复0次,而*就可以。=就ushi匹配=号两个斜杠则表示正则表达式的分界。

2、正则表达式的限定符有:ThinkPHP的自动验证机制是为了进行表单数据验证,验证可以支持function、callback、confirm、equal、unique和regex,这里要讲的是使用正则表达式进行验证。特殊字符许多元字符要求在试图匹配它们时特别对待。

3、^/?[a-zA-Z0-9=:]*$!是对php中单引号的转义。或者还有更简单的!^/?[a-z0-9=:]*$!ii表示忽略大小写。模式分隔符就是为了区分表达式和像i这样的模式修饰符而设计的。

㈤ 求php正则表达式 从一段文本内容中提取 手机号码和固定电话

$preg = "/[^0-9+]*(?P<tel>(\+86[0-9]{11})|([0-9]{11})|([0-9]{3,4}-[0-9]{7,10}))[^0-9+]*/";

㈥ PHP用正则表达式做注册页面

// 定义正则表达式
$username_pattern = "/^[a-zA-Z0-9_-]{3,16}$/"; // 用户名必须是 3-16 位英文字母、数字、下划线或短横线
$password_pattern = "/^[a-zA-Z0-9_-]{6,18}$/"; // 密码必须是派竖型 6-18 位英文字母、数字、下划线或短横线
$email_pattern = "/^([\w\.\-]+)@([\w\-]+)((\.(\w){2,3})+)$/"; // 邮箱必须符合常规格式
// 获取表单数据
$username = $_POST['username'];
$password = $_POST['password'];
$email = $_POST['email'];
// 验证用户名
if (!preg_match($username_pattern, $username)) {
echo "用户名不合法";
exit;
}
// 验证密码尘猜
if (!preg_match($password_pattern, $password)) {
echo "密码不合法";
exit;
}
// 验证邮箱
if (!preg_match($email_pattern, $email)) {
echo "邮箱不合法";
exit;
}
// 如果所有表单数据都合法,就将数据纤老插入数据库或执行其他操作
上述代码中,使用了 PHP 的 preg_match 函数来进行正则表达式匹配。如果正则表达式匹配成功,函数返回 1,否则返回 0。通过判断返回值来确定表单数据是否合法。
当然,这只是一个示例,具体的正则表达式和表单验证逻辑需要根据实际情况进行调整。

㈦ 超常用的PHP正则表达式收集整理

以下就是对超常用的PHP正则表达式进行的收集整理,为了方便大家更快更好的掌握php正则表达式。
一、表单验证匹配
验证账号,字母开头,允许
5-16
字节,允许字母数字下划线:^[a-zA-Z][a-zA-Z0-9_]{4,15}$
验证账号,不能为空,不能有空格,只能是英文字母:^\S+[a-z
A-Z]$
验证账号,不能有空格,不能非数字:^\d+$
验证用户密码,以字母开头,长度在
6-18
之间:^[a-zA-Z]\w{5,17}$
验证是否含有
^%&',;=?$\
等字符:[^%&',;=?$\x22]+
匹配Email地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
匹配腾讯QQ号:[1-9][0-9]{4,}
匹配日期,只能是
2004-10-22
格式:^\d{4}\-\d{1,2}-\d{1,2}$
匹配国内电话号码:^\d{3}-\d{8}|\d{4}-\d{7,8}$------------评注:匹配形式如010-12345678
或0571-12345678

0831-1234567
匹配中国邮政编码:^[1-9]\d{5}(?!\d)$
匹配身份证:\d{14}(\d{4}|(\d{3}[xX])|\d{1})------------评注:中国的身份证为15
位或18

不能为空且二十字节以上:^[\s|\S]{20,}$
二、字符匹配
匹配由
26
个英文字母组成的字符串:^[A-Za-z]+$
匹配由
26
个大写英文字母组成的字符串:^[A-Z]+$
匹配由
26
个小写英文字母组成的字符串:^[a-z]+$
匹配由数字和
26
个英文字母组成的字符串:^[A-Za-z0-9]+$
匹配由数字、26个英文字母或者下划线组成的字符串:^\w+$
匹配空行:\n[\s|
]*\r
匹配任何内容:[\s\S]*
匹配中文字符:[\x80-\xff]+
或者
[\xa1-\xff]+
只能输入汉字:^[\x80-\xff],{0,}$
匹配双字节字符(包括汉字在内):[^\x00-\xff]
三、匹配数字
只能输入数字:^[0-9]*$
只能输入n位的数字:^\d{n}$
只能输入至少n位数字:^\d{n,}$
只能输入m-n位的数字:^\d{m,n}$
匹配正整数:^[1-9]\d*$
匹配负整数:^-[1-9]\d*$
匹配整数:^-?[1-9]\d*$
匹配非负整数(正整数
+
0):^[1-9]\d*|0$
匹配非正整数(负整数
+
0):^-[1-9]\d*|0$
匹配正浮点数:^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$
匹配负浮点数:^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$
匹配浮点数:^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$
匹配非负浮点数(正浮点数
+
0):^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$
匹配非正浮点数(负浮点数
+
0):^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$
四、其他
匹配HTML标记的正则表达式(无法匹配嵌套标签):<(\S*?)[^>]*>.*?</\1>|<.*?
/>
匹配网址
URL
:[a-zA-z]+://[^\s]*
匹配
IP
地址:((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)
匹配完整域名:[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+\.?
提示
上述正则表达式通常都加了
^

$
来限定字符的起始和结束,如果需要匹配的内容包括在字符串当中,可能需要考虑去掉
^

$
限定符。
以上正则表达式仅供参考,使用时请检验后再使用,希望通过这些超常用的PHP正则表达式

㈧ PHP提取手机号码的正则表达式 应该怎么写

$reg = '/[^0-9+]*(?P<tel>(\+86[1][368][0-9]{9})|([1][368][0-9]{9}))[^0-9+]*/';

手机的格式:第一位1,第二位能想起来的有3,6,8。(13×,16×,18×)
所以通过判断前面两位就能筛选出手机号码,然后后面再跟随意9位数即可。

如果第二位除了3,6,8还可能是其他的话,在中括号中添加就行

热点内容
识地图算法 发布:2024-11-25 11:31:10 浏览:19
杨辉三角c语言程序一维数组 发布:2024-11-25 11:30:30 浏览:214
脚本一般用在什么地方 发布:2024-11-25 11:13:28 浏览:823
php上传xls 发布:2024-11-25 11:01:46 浏览:678
formphp 发布:2024-11-25 11:01:45 浏览:553
数据库主表 发布:2024-11-25 10:54:13 浏览:228
什么是cf脚本 发布:2024-11-25 10:51:48 浏览:920
存储台设计 发布:2024-11-25 10:40:04 浏览:668
如何查看自己电脑的所有配置 发布:2024-11-25 10:14:02 浏览:771
java编译器伪编译指什么 发布:2024-11-25 10:08:53 浏览:961