zoukankan      html  css  js  c++  java
  • js实现关键词高亮显示 正则匹配

    html 和ajax 部分就不写了,只需将需要匹配的文字传进去就可以了  

    比如匹配后台传回的字符串data.content中的关键词:直接调用:

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

     以下两个函数分辨是匹配1:匹配关键词words中每一个字符,2:匹配整个关键词words

    //高亮关键字 text =>内容  words:关键词   tag 被包裹的标签
    
    //匹配每一个关键字字符
    function highLightKeywords(text, words, tag) {
    tag = tag || 'span';// 默认的标签,如果没有指定,使用span
    var 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;
    }
    海纳百川,有容乃大;壁立千仞,无欲则刚。人要有胸怀方能成大事,不要被欲望所驱使,方能风吹不动浪打不摇。 不积跬步无以至千里,不积小流无以成江海。从事技术工作,要时刻学习积累,即使不能一专多能也应术业有专攻,方能以不变应万变。
  • 相关阅读:
    [Python]执行Linux命令
    [Linux]命令返回值以及错误对照表
    [ERROR]pip insall pyodbc
    [CentOS7]安装ODBC Driver 17 for SQL Server
    [Python]获取字典所有值
    [Python]判断变量类型是否为List列表
    十分钟了解pandas
    Docker容器化技术(上)
    C语言位域
    PAT基础级-钻石段位样卷2-7-7 危险品装箱 (25 分)
  • 原文地址:https://www.cnblogs.com/websharehome/p/7998931.html
Copyright © 2011-2022 走看看