php程序:
$patterns[0]=<<<EOT2
/<(?<HtmlTag>[\w]+)[^>]*\s[iI][dD]=(?<Quote>["']?)book_num(?(Quote)\k<Quote>)["']?[^>]*>((?<Nested><\k<HtmlTag>[^>]*>)|<\/\k<HtmlTag>>(?<-Nested>)|.*?)*<\/\k<HtmlTag>><a id="bookcase"[\s\S]+?<\/span>/si
EOT2;$replacements[0]=""; print preg_replace($patterns, $replacements, $text); ————————————————————————————————————————————Warning: preg_replace() [function.preg-replace]: Compilation failed: unrecognized character after (?< at offset 136 in D:\wamp\www\ttt\test.php on line 117
这是为什么?
$patterns[0]=<<<EOT2
/<(?<HtmlTag>[\w]+)[^>]*\s[iI][dD]=(?<Quote>["']?)book_num(?(Quote)\k<Quote>)["']?[^>]*>((?<Nested><\k<HtmlTag>[^>]*>)|<\/\k<HtmlTag>>(?<-Nested>)|.*?)*<\/\k<HtmlTag>><a id="bookcase"[\s\S]+?<\/span>/si
EOT2;$replacements[0]=""; print preg_replace($patterns, $replacements, $text); ————————————————————————————————————————————Warning: preg_replace() [function.preg-replace]: Compilation failed: unrecognized character after (?< at offset 136 in D:\wamp\www\ttt\test.php on line 117
这是为什么?
解决方案 »
- php三种post数据方法的区别
- 初学PHP,想向各位请教在WIN XP下如何配置php运行环境,另外我想使用sql server做为数据库,请问环境怎么搭建?谢谢
- 请教一下在php类中 这个&this表示什么意思
- 求JavaScript的二级导航菜单例子
- 快崩溃了,我安装PHP+MYSQL环境竟然不行.谁帮帮我啊,
- PHP可以调用activex控件里的函数嘛?在线等待~~
- 聊聊PHP,放点分,加加人气……
- PHP调用远程DCOM问题讲座!!
- 能执行PHP,但不能执行PHP3
- 如何根据一个地址到硬盘上读这个文件是否存在?
- PHPMYADMIN点击表“air_conditioner"就自动退出
- 不用form怎么post数据
你不能用类似/(?<groupname>somethinghere)/这样的正则式。
手册上那里有写吗? 好像找不到, php里对正则的支持如何程度, 它让我一直在黑暗中摸索, 请指教.
http://php.net/manual/en/reference.pcre.pattern.syntax.php
手册pcre语法其实有,有一些我自认为很有趣的正则式.
比如
1.once-only subpatterns
2.conditional subpatterns
3.recursive patterns
$patterns[0]= < < <EOT2 明显是中文的小于号
你不能用类似/(? <groupname>somethinghere)/这样的正则式。
------------------------------------------------------------
这个表达式也不支持。 .*?
<span class="pd_buy_num_unit">.*?</span>
http://www.imkevinyang.com/2009/07/%E4%BD%BF%E7%94%A8%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F%E5%8C%B9%E9%85%8D%E5%B5%8C%E5%A5%97html%E6%A0%87%E7%AD%BE.html