正則表示式匹配dom元素指定包含特定id
阿新 • • 發佈:2019-02-02
今天碰到專案一個需求,需要通過使用者輸入儲存實時更新預覽
其中就碰到如何匹配更新最新的內容,首先得匹配成對dom元素,我們先用span標籤包裹,後的根據不同得id值更新不同得資料,
經過自己的不斷反覆實驗總結出了匹配正則表示式如下:
首先先寫出匹配特定屬性值的正則是
正則表示式為reg = /\s+\@([\w-_]*)([\.\w]*)\s*=/ig //匹配含有@屬性 如@id
之後進一步匹配含有指定屬性得標籤如<span>
首先先大概區別一下 [\s\S]* 和 .* ,兩者在單行模式下是等價的,因為.*匹配除換行符的任何字元。
正則表示式為 reg = /<span\s+\@\s*(id)\s*=\s*name\s+(([\s\S])*?)<\/span>/ig
例子如下:
var test = `<div @change='me'>dfa<span @id = me ></span><span @id = name >,</span></div>`
var reg = /<span\s+\@\s*(id)\s*=\s*name\s+(([\s\S])*?)<\/span>/ig
me = test.match(reg)
結果輸出["<span @id = name >,</span>"]