我想从下面的代码中仅提取“Mlody”字符串。匹配应从<dt>User</dt>
开始,到下一行的</dd>
结束。我需要一些关于所需RegEx代码的帮助。 HTML代码如下。
<dl>
<dt>User</dt>
<dd><a href="/users/837">Mlody</a></dd>
<dd></dd>
</dl>
答案 0 :(得分:1)
作为一般规则,您不应使用正则表达式来匹配/解析HTML文本。
相反,尝试使用DOM解析器(如果可用)并搜索所需的标记,然后在需要匹配内容时使用正则表达式搜索这些结果的文本内容。
只有在您没有任何其他选项时才决定使用正则表达式。
您可以尝试使用以下正则表达式来匹配多行文字:
<dt>User</dt>((?:.|[\r\n])*?)</dd>