[英]PHP regex multiline one part of string
我想在正则表达式中包含一个多行
<?php
function bloggerLoop ( $matches ) { print_r ( $matches ) ; }
$theme = preg_replace_callback(
"#<b:loop values='data:(.*)' var='(.*)'>(.*?)</b:loop>#i",
"bloggerLoop",
$theme
);
?>
这就是我所拥有的,但是b:loop
在模板中不止一次,并且此正则表达式跳过所有循环并创建一个“大”循环,但是我只需要一个“部分”。
需要的是:
<b:loop values='data:x' var='x'>MULTILINE</b:loop>
该文件需要解析的是: http : //pastebin.com/a3g3G1uE
希望您能在正则表达式方面为我提供帮助。
坦克。
-韦斯利
正则表达式不是用于此的工具。 对于基本的Regex来说,HTML标记结构太复杂了,您应该尝试使用一些HTML DOM库(例如PHP Simple HTML DOM Parser )来完成HTML DOM的工作。
$html = file_get_html('http://pastebin.com/raw.php?i=a3g3G1uE');
foreach($html->find('b:loop') as $element)
echo $element->values. '<br>';
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.