查找元素内部的第一个字符串实例并在其周围添加标记

时间:2013-07-27 04:44:45

标签: php jquery wordpress replace

我可以编写哪些PHP或jQuery可以自动在元素(通常是<p>标记)中找到短语的第一个实例(例如“每日摘要”)并自动在文本周围添加一个范围我选择的一类?

换句话说,我希望页面上任何元素内的短语“Daily Digest”的第一个实例以红色突出显示,而用户不必在文本周围添加跨度(因为人们使用该网站是代码文盲)。如果短语在div或其他元素中被多次使用,我只希望突出显示第一个实例。

3 个答案:

答案 0 :(得分:2)

试试这个:

$content = preg_replace('/'.$word.'/i', '<span class="red">$0</span>', $content);

在preg_replace上查看更多内容。

代码测试。它有效。

答案 1 :(得分:1)

    $(body).filter(function() {
        return $("p", this).text() == "Daily Digest";
    }).wrapAll("<span class='myClass'></span>");

注意 - 这会找到<p>Daily Digest</p>的所有实例,并将其转换为<span class='myClass'><p>Daily Digest</p></span>。我会让你知道如何只在某个元素中的第一个实例上做到这一点。

答案 2 :(得分:0)

检查

$testwords= preg_replace('/'.$contents.'/i', '<span class="sample">Sample Content</span>', $testwords);

参考http://in1.php.net/preg_replace