1

这是场景

我正在使用这个正则表达式来获取带有 id test 的 div 标签内的文本

<div id = "test">text</div>

$regex = "#\<div id=\"test\"\>(.+?)\<\/div\>#s";

我唯一的要求是在下面的场景中从 div 标签中获取文本

<div id="test" class="teating" style="color:red" etc etc .... more attributes >

即 id 是 div 标签的第一个属性,后面可以跟 n 个属性。如何仅通过正则表达式从此类标签中提取文本。请帮忙谢谢。

4

2 回答 2

0

使用这个正则表达式:

$regex = '#<div\s+.*?id="test".*?>(.*?)</\s*div>#ims';
于 2012-08-02T15:14:48.057 回答
0

在 php 中:将 $replacement 定义为您的输入字符串。

$pattern = '#<div[^/>]*>([^<]*)</div>#';
$replacement = '\1';
$text = preg_replace($pattern, $replacement, $subject);
于 2012-08-02T15:30:24.770 回答