php正则表达式问题????
 <?php
    $pattern = "/<p.*p>|<div[^>]+>/";
    $str = "<div style=\"width:100px\">无语<p>hi</p></div>";
    preg_match_all($pattern,$str,$matches);
    var_dump($matches);
?>

请问为什么结果是:

 array (size=1)
  0 => 
    array (size=2)
      0 => string '<div style="width:100px">' (length=25)
      1 => string '<p>hi</p>' (length=13)

应该先匹配出p标签吗?

0

2个回答

用匹配串去扫描str,先读到div的

0

正则表达式
正则表达式:用于描述字符排列和匹配模式的一种语法规则。它主要用于字符串的模式分割、匹配、查找及替换操作。

在PHP中有两套正则表达式函数库,两者功能相似,只是执行效率略有差异:
一套是由PCRE(Perl Compatible Regular Expression)库提供的。使用“preg_”为前缀命名的函数;
一套由POSIX(Portable Oper......
答案就在这里:PHP正则表达式
----------------------Hi,地球人,我是问答机器人小S,上面的内容就是我狂拽酷炫叼炸天的答案,除了赞同,你还有别的选择吗?

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
PHP正则表达式,关于PHP正则表达式的问题
-
PHP正则表达式里的问题
$pattern='(\\$[0-9]+\\.[0-9]+)'rnrneregi($pattern,$content)rnrn此处pattern理论上是匹配一个小数,但是\\.,\\$为什么都用两个反斜杠,转椅的话一个不就够了吗?rn还有,此处pattern是单引号,不是双引号rn求大侠解释
php 正则表达式问题
sffsf(5545555)rn帮忙用正则表达式把括号里面的内容提出来rn返回结果是5545555rn php的rn谢了
php中,正则表达式的问题
我自己想匹配一个网站上的一个嵌套标签, 和嵌套的,我自己先把两个标签分开进行匹配,可以成功地匹配到a标签和span标签。但是将他们嵌套在一起的时候就出问题了,我感觉问题是在于这个网页标签之间的换行符,但是这个换行符要怎么解决啊?rn这个是那个嵌套标签的格式rnrnrn```rn rn内容区域rn[认证]rn;rn```rnrnrnrn然后这个是我自己写的正则表达式:rn'/\([\s\S]*)\([\s\S]*)\<\/span\>\<\/a\>/'
PHP正则表达式问题,请进
有一域名,有可能为以下几种情况:rnwww.sina.comrnbbs.sina.comrn102.bbs.sina.comrnwww.bbs.sina.comrnrn如何把www.sina.com或者bbs.sina.com匹配出来?rn感谢!!
php正则表达式问题
现在有一个字符串url,我想截取标题的长度,然后再返回这个字符串url,最主要是正则表达式不会写啊!帮帮忙!Thx!rn[code=HTML]rn澳門非常婚禮澳門非常婚禮澳門非常婚禮澳門非常婚禮rn[/code]rn[code=PHP]rn// 截取字符串rn function limit_chars($str, $number)rn $str = strip_tags($str);rn rn if(mb_strlen($str,'UTF8')<= $number) rn return $str;rn else rn return mb_substr($str,0,$number,'utf-8').'...';rn rn rn[/code]rn例如返回字符串urlrn[code=HTML]rn澳門非常婚禮澳門非常婚禮...rn[/code]
php正则表达式简单问题
eregi("","", $head); rnecho $head[0]." ";//rnecho $head[1]." ";//"rnecho $head[2]." ";//sdfsdf.gifrnecho $head[3]." ";//"rnecho $head[4]." ";//rn想输出上面注释后的结果,可惜错了rnsdfsdf.gif就输出sdfsdf.gif" border="0"rn各位帮我指点一下
PHP正则表达式 问题
比如说我想验证 rn2年2班 rn这样的表达式改怎么写rn/^([0-9])+([???])+([0-9])+([???])+/; rn
关于php正则表达式的问题
[code=php]rn $str = "[quote]\t\nabc\t\n[/quote]";rn $result = preg_replace("/\s*\[quote\][\n\r]*(.+?)\[\/quote\]\s*/is","\\1",$str);rn echo $result;rn[/code]rn如题,$result = abcrn当$result = preg_replace("/\s*\[quote\][\n\r]*(.+?)\[\/quote\]\s*/i","\\1",$str);rn$result = [quote] abc [/quote]rn求解。。
正则表达式在php里的问题!
./backdoor.php?page_name=body_index_1.htm&type=text&num=0rn这样的perl的正则表达式放在//之间,其中的"?","."有问题,rn所以有没有什么类似addslashes的函数能在这些符号前加上\,有吗??
php采集正则表达式问题
2012-09-14 09:50:02 作者:ryuiu 浏览次数:0 rnrnrn我只想获取时间,正则应该怎么写啊!小弟正则完全不会
PHP里的正则表达式问题
[code=HTML]rn中嗯rnjhwengwsdgwenydhasdhrn中嗯rn2354235en;;/w;,.;rn[/code]rn我想匹配类似]当中的内容的时候.我发现一个问题不知道是什么原因rnrn我把$pattern='/([.\n]+)/';rn为什么这样无法匹配 只要.加了[]就是无法 是函数原因还是php里的正则表达式不一样rnrn然后我上网找了一下 这样就可以匹配 为什么嗯rn$pattern='/(.+)/s';rnrn请高手详细说明这其中的原因 至少让我清楚下 为什么是这样的 有什么参考文献或资料说明的不PHP
PHP正则表达式问题
不知道怎么传不进去图片,图片链接:http://v1.freep.cn/3tb_140810190849ipix512293.jpgrnrn我希望提取姓  名: 性  别: 等等后的信息,这个该怎么写,表达的不是很好相信大家都能理解rn[code=html] rn rn rn rn 您当前的报考信息如下:rn (报名时间:rn 更新时间:2014-2-28 13:57:13)rn rn rn rn rn 学  号:2012614053rn rn rn 姓  名:个人rn 性  别:男rn rn rn 报考语种:英语rn 报考等级:4rn rn rn 身份证号:421083199402038812rn rn rn 所在学院:计算机科学与技术学院rn rn rn 所学专业:软件开发rn rn rn 所在年级:2012rn 学制:4  学历:2rn rn rn ↑登记照片↑rn 照片:[2]rn 报名费用:已缴纳rn rn rn 审核标记:1rn 审核意见:暂未审核,请随时留意!rn rn rn rn 注意如果你刚上传过照片,可能要刷新(F5)该页面才能正确显示最新的照片。rn rn rn rnrn rn 返回首页rn 查看其他同学报名信息rnrn rn rn rn rn rn[/code]
php一个正则表达式的问题
首页 上一页 1 2 下一页rn我想获取xxx4的这段该如何写rn/(.*?)下一页<\/a>/ 我用这个只能获取xxx1这里的字符串
问php正则表达式问题
SELECT id,Count(Author.Author_ID) AS memberCount,Author.Username, FROM rnrn将id ,memberCount ,Username 取出来rnrnphp 正则表达式怎么写? rn
关于PHP正则表达式的问题
$var = "to be or not to be";rnrn$match=ereg(1^to1 , $var); //truern$match=ereg(1be$1 , $var); //truern$match=ereg(1^or1 , $var); //falsernrn为什么第一个$match会返回 true 呢??? 那个1^to1 这两个1是代表单引号的意思吧? ^不是表示除to的所有字符吗?rnrn第三个$match 又返回false 小弟初正则,着实不解啊,请高手赐教
php 正则表达式的问题.
1. " 怎么表示 ?rn2. 半角英文空格 怎么表示 ??rn3. / 啥意思 ??rn谢谢
PHP的正则表达式问题
想对一个文本框中的输入进行限制,只允许输入中文、字母(A-Z,a-z,忽略大小写)、数字(0-9)或符号(-、!),其它为非法输入,请大家帮忙!
PHP里正则表达式问题
如果我有一个Url比如是这样rnhttp://servername/param1/123/param2/345/param3/432/rn我如何能得到一个这样的结果呢?正则表达式怎么写呢?rnrn$param1=123;rn$param2=345;rn$param2=432;rnrn对正则表达式不熟悉看了半天还是一头雾水。
PHP关于正则表达式的问题
asdasdrn zxczxcrnrn我是用正则表达式 ([\s\S]*)rnrn匹配出来的结果是:asdasd zxczxcrnrn但是我需要的结果是:asdasdrnrn请问各位大大如何解决,这个正则表达式怎么写才能让他匹配与其相对应的
PHP正则表达式的一个问题
$test="1982-08-09"rn想用PHP正则表达式把所有的"-"去掉.rnstrtr($test,'-','')rn结果发现.去不掉.rn用strtr($test,'-',' ')rn就变成1982 08 09rn有没有办法能让它彻底的变成19820809呢...
PHP正则表达式的问题
我写了这么一行代码,想匹配一串数字:rn[code=php]preg_match('/\d*/, $line, $match);[/code]rn但为什么结果是匹配了一个空串?
【PHP基础知识】——PHP正则表达式
前言:正则表达式,是计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些匹配某个模式的文本。
PHP正则表达式
PHP正则表达式0x00在这里对PHP中Perl风格的正则表达式函数做一个分类总结.在这里我们做如下约定: $pattern*=正则表达式 $subject=匹配的目标数据 0x01 preg_match() 函数原型:int preg_match ( string $pattern , string $subject [, array &$matches [, int $flags = 0 [,
PHP 正则表达式
这个星期要攻破PHP正则表达式   正则表达式定义    正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。    列目录时, dir *.txt或ls *.txt中的*.txt就不是一个正则表达式,因为这里*与正则式的*的含义是不同的。
php正则表达式
什么叫正则表达式 正则表达式是对字符串进行操作的一种逻辑公式,就是用一些特定的字符组合成一个规则字符串,称之为正则匹配模式。 $p = '/apple/'; $str = "apple banna"; if (preg_match($p, $str)) { echo 'matched'; } 其中字符串'/apple/'就是一个正则表达式,他用来匹配源字符串中是否存在
PHP正则表达式 ---
<?php $tmpfile = 'C:\templets\default/'; $tmpfile = preg_replace("/[\\/]{1,}/", "/", $tmpfile); var_dump(ereg_replace("[/\\]{1,}", "/", $tmpfile)); var_dump( ereg_replace("[/\\]{1,}", '/', dirname(
php 正则表达式
PHP 正则表达式 思维导图    点击下图,可以看具体内容!     介绍          正则表达式,大家在开发中应该是经常用到,现在很多开发语言都有正则表达式的应用,比如javascript,java,.net,php等等,我今天就把我对正则表达式的理解跟大家唠唠,不当之处,请多多指教!   需要知道的术语——下面的术语你知道多少?   Δ
PHP和正则表达式
//改变图片大小function resizepic(thispic){if(thispic.width>700) thispic.width=700;}//无级缩放图片笮?function bbimg(o){ var zoom=parseInt(o.style.zoom, 10)||100; zoom+=event.wheelDelta/12;
相关热词 c#异步发送kafka c#窗体编号 c# 操作二进制文件 c# 反射 机制 c#线程 窗体失去响应 c#角度转弧度 c# 解析gps数据 c# vs设置 语法版本 c# json含回车 c#多线程demo