A. php正则通配符
用表达式“.+” 匹配除换行符以外从一个字符开始到任意长度字符
B. php正则表达式:
<?
$line='123123234324/File/images/time/5625.jpg"234234sdfsadf';
preg_match_all("/\/File\/images\/([^\"]*)/s",$line,$match);
print_r($match);
?>
显示为
Array ( [0] => Array ( [0] => /File/images/time/5625.jpg ) [1] => Array ( [0] => time/5625.jpg ) )
$match[1][0] 就是你想要的内容吧 ,File/images/开始,“结束之间的内容 就是中间的内容不包含 双引号 " 所以用 [^\"]* 来匹配这部分内容
你这里不要用 ^ 和 $ 来表示开头结尾,因为 /File/ima 和 " 并不是这个字符串的开头和结尾。
C. PHP正则
看一下php手册的pre_match_all()你就明白了
结果排序为$arr[0]保存完整模式的所有匹配, $arr[1] 保存第一个子组的所有匹配,以此类推。
就是说,第一个数组是整个正则表达式匹配的结果,第二个数组是第一个()中的小正则匹配的结果,这个正则有几个括号就有几个数组;
所以你取第一数组就行了
D. php正则验证。
$result=preg_replace("/[^:]*s*:s*([^:]*)/","$1","DomainName:QIGOU12.COM");
echo$result." ";
E. PHP 正则表达式
代码如下:
<?php
$str=file_get_contents('http://abc.com/aaa.php');
if (preg_match('|<input name="a" type="hidden" value="([^"]*)"/>|', $str, $reg)) $out=$reg[1];
else $out='';
echo "$out<br>\n";
?>
F. PHP正则匹配
<?php
$str='<p>
相关新闻
学者:应立即全面放开二孩5年后养老危机将爆发
媒体:全面二孩政策最快或在年内实施
中国60岁以上老人达2.12亿老龄化逐步加深
五六年前,江苏徐州某乡镇幼儿园一个班能收三四十个孩子,现在大班只有三十个左右,中班只有二十多个,小班...<br/>';
preg_match_all('/<p>(.*?)<brs*/>/is',$str,$matches);
print_r($matches[1]);
exit;
G. PHP正则表达式
'/^\s*{(\w+)}\s*=/' 代表“词首位置起或有空白{1个或以上的字母串(该串编号1)}或有空白”
替换成,'$\\1=' 含义是"$编号1的串="
H. 请教PHP正则
?: 是个整体,这个意思是外面的括号仅仅起分组的作用,匹配结果不出现在 $1 $2 $3 ... 里面。
\+? 中的 ? 匹配0个至1个 +
(...)? 的 ? 同上,匹配括号中的内容0次到1次
补充:
通常情况下,正则表达式的()可以将匹配结果提取出来。
比如/^(\d+)-(\d+)-(\d+)$/ 这样的表达式可以匹配 "2010-03-01" 这样的字符串,执行匹配之后会将结果放在 $1 $2 $3 里面,$1的内容是2010, $2的内容是03,$3的内容是01。
括号里面开头加 ?: 就是跳过这个括号,也就是不提取其中内容,仅仅起分组的作用。如果用/^(?:\d+)-(\d+)-(\d+)$/ 匹配 "2010-03-01",$1的内容就是03,而不是2010了。
可以用以下程序验证:
<?php
preg_match('/^(\d+)-(\d+)-(\d+)$/', '2010-03-01', $matches);
print_r($matches);
preg_match('/^(?:\d+)-(\d+)-(\d+)$/', '2010-03-01', $matches);
print_r($matches);
I. php正则表达式
这里涉及到正则表达式中得子串捕获的概念。php中的正则表达式使用的是pcre正则库,因此使用方式上和pcre是相同的,只不过是为了使用方便封装了一起便捷的操作而已。preg_match函数和preg_match_all函数用于在php中进行正则表达式的相关处理。下面看下preg_match函数的定义:intpreg_match(string$pattern,string$subject[,array&$matches])在$subject中查询$pattern,如果找到则把匹配的字符串存储在$matches中。$matches[0]中存放整个匹配的字符串,$matches[i]中存放匹配到的第i个捕获子串。题目的解决方法:$pattern="/^NAME(.*){$/";preg_match($pattern,$string,$match);echo$match[1];//$match[1]为提取的NAME和{之间的内容。关于捕获组信息($match的信息)详情,可以参考文档:http://wang
J. 下面的PHP正则如何写
刚才你你那个匹配a标签的URL地址,已经做出来了只是带有网址发布出去,
现在我把答案简化下,
<?php$string = '<div class="main"> ......';preg_match_all('/<a href="(.*?)"(.*?)>/is', $string, $matches);echo "<pre>";print_r($matches[1]);echo "</pre>";?>望采纳 Thx