2016-07-29 81 views
-4

之間的文本我有一個包含標籤正則表達式來強調標籤

我想強調的<abbr></abbr>標籤包含在標籤之間沒有其他<abbr></abbr>標籤<abbr></abbr>之間文本的文本。下面是示例

content example <abbr variable-title="notepad 1">data <abbr variable-title="notepad 2">sample value </abbr>sample conten</abbr> 

在此我想強調的只是<abbr variable-title="notepad 2">sample value </abbr>,因爲它沒有嵌套<abbr></abbr>

我如何寫正則表達式來獲得這樣的單<abbr></abbr>標籤突出

+3

這不是你想要的JS /正則表達式。這是更多的[CSS](http://stackoverflow.com/questions/tagged/css)。 –

回答

0

JavaScript的使用:

str.replace(/(<abbr)([^>]*>[^<]*(<(?!abbr)[^<]*)*?<\/abbr>)/gi, "$1class=\"highlight\" $2"); 

demo

然後在你的CSS中定義一個類abbr.highlight

+0

請幫我在這也http://stackoverflow.com/questions/38782183/regex-which-identified-words-with-tags –

0

可以試試這個/<abbr>(\S.*?)<\/abbr>/gi

+0

未突出顯示。請點擊這裏https://regex101.com/r/cD8nG4/41 –

+0

雖然這段代碼可能會解決這個問題,[包括解釋](// meta.stackexchange.com/questions/114762/explaining-entirely-code-基於問題的答案)確實有助於提高帖子的質量。請記住,您將來會爲讀者回答問題,而這些人可能不知道您的代碼建議的原因。也請儘量不要使用解釋性註釋來擠佔代碼,因爲這會降低代碼和解釋的可讀性! – FrankerZ