搜尋

首頁  >  問答  >  主體

標題重寫為:"將腳本標籤篩選至陣列"

我有一個範例標記:

<p><span style="color: blue;">现在是这个</span></p>
<p><br></p>
<p>主要配置值是这个</p>
<p><br></p>
<p>!</p>
<p>启用</p>
<p>配置终端</p>
<p>服务器名称 <span style="color: red;">服务器名称</span></p>
<p>启用密码 <span style="color: red;">服务器密码</span></p>
<p>禁用域名查找</p>
<p>IP域名 <span style="color: red;">地区</span>.google.com</p>
<p>!</p>
<p><br></p>

我想寫一個JavaScript程式碼,將所有的span標籤資料過濾到兩個不同的陣列中。一個用於顏色為紅色時,另一個用於顏色為藍色時。但是我無法做到,有人可以幫我嗎?我正在嘗試編寫JS程式碼,但我的解決方案失敗了。

P粉592085423P粉592085423446 天前478

全部回覆(1)我來回復

  • P粉794177659

    P粉7941776592023-09-13 11:08:45

    您可以簡單地使用正規表示式match()來取得元素

    const html = `<p><span style="color: blue;">是这个了</span></p>
    <p><br></p>
    <p>主要配置值是这个</p>
    <p><br></p>
    <p>!</p>
    <p>启用</p>
    <p>配置终端</p>
    <p>服务器名称<span style="color: red;">服务器名称</span></p>
    <p>启用密码<span style="color: red;">服务器密码</span></p>
    <p>禁用IP域名解析</p>
    <p>IP域名<span style="color: red;">区域</span>.google.com</p>
    <p>!</p>
    <p><br></p>`
    
    const blueArray = html.match(/(?<=<span style="color: blue;">)(.*?)(?=<\/span>)/g)
    
    console.log(blueArray)
    
    const redArray = html.match(/(?<=<span style="color: red;">)(.*?)(?=<\/span>)/g)
    
    console.log(redArray)

    回覆
    0
  • 取消回覆