需要一点正则表达式帮助


Need a little reg-exp help

我在reg-exp方面很糟糕,所以我需要一点帮助来正确处理它。

我得到了一个PHP变量,其中包含从PDF创建的HTML代码。这些页面是分开的,并带有以下样式的注释:

<!-- Page 1 -->

我需要的是拆分每个评论的内容,以便我可以将页面彼此分开。我尝试只使用 explode('<!-- Page', $content) ,但这会使标签的其余部分留在下一页的开头,所以显然这不是一个足够好的解决方案。

所以我需要帮助的是找到一个正则表达式,它将在 X 可以是任何数字的<!-- Page X -->上拆分。有人能帮我吗?

这似乎工作得很好;

<?php
$foo = '
Hello.
<!-- Page 2 -->
Bar
<!-- Page 3 -->
Foo
';
$pages = array_map( 'trim', preg_split( '~<!-- Page ('d+) -->~m', $foo ) );
var_dump( $pages );

输出:

berry@berry-pc:~$ php foo.php 
    array(3) {
  [0]=>
  string(6) "Hello."
  [1]=>
  string(3) "Bar"
  [2]=>
  string(3) "Foo"
}

希望有帮助。

简单的正则表达式:

<!-- Page [0-9]+ -->