在文本段落中查找并标记字符串
P粉253800312
P粉253800312 2023-08-28 20:53:07
[CSS3讨论组]
<p>我有一个段落,例如:</p> <pre class="brush:html;toolbar:false;">&lt;p&gt; Lorem ipsum &lt;b&gt;amet, consetetur sadipscing elitr, sed diam&lt;/b&gt; dolor sit nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, &lt;i&gt;sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum&lt;/i&gt;. Stet clita kasd gubergren, no sea takimata sanctus &lt;/p&gt; </pre> <p>还有一个类似于<code>&quot;Lorem ipsum amet, consetetur sadipscing elitr&quot;</code>的字符串。 我想用Javascript在原始段落中给这个特定的字符串添加下划线。</p> <p>我认为我需要插入一个带有类/ID的span(-> CSS: text-decoration:underline),但我不知道如何确定段落内的正确索引(在字符串搜索中忽略任何<code>&lt;b&gt;</code>,<code>&lt;i&gt;</code>等,但包括它们与span的索引相关)。</p> <p>谢谢任何建议。</p>
P粉253800312
P粉253800312

全部回复(2)
P粉670838735

const text = YourString.replace(/\bMySearch\b/sg, '<u>$1</u>');

P粉833546953

试试这个:

//获取元素的内部内容
var text = document.getElementById("text").innerHTML;

//将要替换的文本用<u>标签包围起来
var newtext = text.replace(/Lorem ipsum <b>amet, consetetur sadipscing elitr/g, "<u>Lorem ipsum <b>amet, consetetur sadipscing elitr</u>");

//将新的下划线文本放回元素中
document.getElementById("text").innerHTML = newtext;
<p id="text">
Lorem ipsum <b>amet, consetetur sadipscing elitr, sed diam</b> dolor sit nonumy eirmod  tempor 
invidunt ut labore et dolore magna aliquyam erat, <i>sed diam voluptua. At vero eos et accusam
et justo duo dolores et ea rebum</i>. Stet clita kasd gubergren, no sea takimata sanctus
</p>
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号