如何匹配长度超过50个字符的标记之间的文本

时间:2013-05-04 00:44:46

标签: regex

我有很多来自旧网站的HTML文件,我正在尝试从中提取文本。

我想在长度超过50个字符的HTML标记<p>text</p>之间提取所有文本。我只希望它返回没有标签的文本。

这是我到目前为止所做的。

<[^>]+>([^<]{50,})<[^>]+>

唯一的问题是它正在返回带有文本的javascript,img和其他标签。

我正在使用Notepad ++来浏览所有文件。

1 个答案:

答案 0 :(得分:0)

使用DOM。

在PHP中,例如textContent

在jQuery中,它就像调用text()一样简单。例如,

var content = '';
$('*').each(function () {
    if ($(this).text().length > 50) {
        content += $(this).text() + "\n";
    }
}

上面的代码会产生重​​复,但它应该让你知道如何继续。

在任何情况下,请在询问时始终指定实施。