国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > JS > 正文

JS實現(xiàn)關鍵詞高亮顯示正則匹配

2024-05-06 16:44:59
字體:
來源:轉載
供稿:網友

html 和ajax 部分就不寫了,只需將需要匹配的文字傳進去就可以了 

比如匹配后臺傳回的字符串data.content中的關鍵詞:直接調用:

data.content = highLightKeywords(data.content,keywords)即可

 以下兩個函數(shù)分辨是匹配1:匹配關鍵詞words中每一個字符,2:匹配整個關鍵詞words

//高亮關鍵字 text =>內容 words:關鍵詞  tag 被包裹的標簽//匹配每一個關鍵字字符function highLightKeywords(text, words, tag) {tag = tag || 'span';// 默認的標簽,如果沒有指定,使用spanvar i, len = words.length, re;for (i = 0; i < len; i++) {// 正則匹配所有的文本re = new RegExp(words[i], 'g');if (re.test(text)) {text = text.replace(re, '<'+ tag +' class="highlight">$&</'+ tag +'>');}}}return text;}
//匹配整個關鍵詞 不拆分function highlight(text, words, tag) {// 默認的標簽,如果沒有指定,使用spantag = tag || 'span';var i, len = words.length,re;//匹配每一個特殊字符 ,進行轉義var specialStr = ["*", ".", "?", "+", "$", "^", "[", "]", "{", "}", "|", "//", "(", ")", "/", "%"]; $.each(specialStr, function(i, item) {if(words.indexOf(item) != -1) {words = words.replace(new RegExp("//" + item, 'g'), "//" + item);}});//匹配整個關鍵詞re = new RegExp(words, 'g');if(re.test(text)) {text = text.replace(re, '<' + tag + ' class="highlight">$&</' + tag + '>');}return text;}

總結

以上所述是小編給大家介紹的JS實現(xiàn)關鍵詞高亮顯示正則匹配,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VeVb武林網網站的支持!


注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 柳州市| 灌南县| 裕民县| 定州市| 新晃| 金昌市| 凭祥市| 眉山市| 湾仔区| 绿春县| 杭锦旗| 岱山县| 炎陵县| 宿松县| 盱眙县| 库车县| 安龙县| 仁化县| 开化县| 子长县| 汝南县| 时尚| 玉树县| 衡阳市| 保靖县| 鄂托克旗| 江西省| 南部县| 山丹县| 姚安县| 武清区| 塔河县| 稷山县| 临西县| 甘肃省| 苍南县| 宣恩县| 黎平县| 思茅市| 阿合奇县| 富裕县|