PHP预匹配任何内容,直到第一个空行

PHP预匹配任何内容,直到第一个空行,php,regex,preg-match,Php,Regex,Preg Match,在第一个空行之前,我如何获取任何内容 注意:内容的第一部分和第二部分并不总是以ul开头 <ul> <li><a href="#">Foo</a></li> <li><a href="#">Foo</a></li> <li><a href="#">Foo</a></li> </ul> <ul>

在第一个空行之前,我如何获取任何内容

注意:内容的第一部分和第二部分并不总是以ul开头

<ul>
    <li><a href="#">Foo</a></li>
    <li><a href="#">Foo</a></li>
    <li><a href="#">Foo</a></li>
</ul>

<ul>
    <li><a href="#">Bar</a></li>
    <li><a href="#">Bar</a></li>
    <li><a href="#">Bar</a></li>
</ul>
假设将只包含空格的行计为空行。如果没有,请删除“可选空白”行


假设将只包含空格的行计为空行。如果没有,请删除“可选空白”行。

echo$result.“…”;把这条线换成一条新的线。有没有办法把它放在之后?@user557108:是的,我添加了一行,将尾随空格从匹配中排除。echo$result.“…”;把这条线换成一条新的线。有没有办法把它放在之后?@user557108:是的,我添加了一行,将尾随空格从匹配中排除。
preg_match(
    '/\A    # Start of string
    .*?     # Match any number of characters (as few as possible)
    (?=     # until it is possible to match...
     \s*    #  trailing whitespace, including a linebreak 
     ^      #  Start of line
     \s*    #  optional whitespace
     $      #  End of line
    )       # (End of lookahead assertion)/smx', 
    $subject, $regs);
$result = $regs[0];