搜尋

首頁  >  問答  >  主體

在文字段落中尋找並標記字串

<p>我有一個段落,例如:</p> <pre class="brush:html;toolbar:false;"><p> 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> </pre> <p>還有類似<code>"Lorem ipsum amet, consetetur sadipscing elitr"</code>的字串。 我想用Javascript在原始段落中為這個特定的字串添加下劃線。 </p> <p>我認為我需要插入一個帶有類別/ID的span(-> CSS: text-decoration:underline),但我不知道如何確定段落內的正確索引(在字串搜尋中忽略任何< ;code><b></code>,<code><i></code>等,但包括它們與span的索引相關)。 </p> <p>謝謝任何建議。 </p>
P粉253800312P粉253800312486 天前551

全部回覆(2)我來回復

  • P粉670838735

    P粉6708387352023-08-29 15:33:56

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

    回覆
    0
  • P粉833546953

    P粉8335469532023-08-29 13:52:37

    試試這個:

    //获取元素的内部内容
    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>

    回覆
    0
  • 取消回覆