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;
    }
    海纳百川,有容乃大;壁立千仞,无欲则刚。人要有胸怀方能成大事,不要被欲望所驱使,方能风吹不动浪打不摇。 不积跬步无以至千里,不积小流无以成江海。从事技术工作,要时刻学习积累,即使不能一专多能也应术业有专攻,方能以不变应万变。
  • 相关阅读:
    在Centos7下源代码安装配置Nginx
    mysql5.7.21源码安装
    数据库设计三大范式
    电商项目中使用Redis实现秒杀功能
    PHP和Redis实现在高并发下的抢购及秒杀功能示例详解
    PHP面向对象(抽象类与抽象方法、接口的实现)
    php面向对象 封装继承多态 接口、重载、抽象类、最终类总结
    利用VHD虚拟文件加密自己的个人信息
    Chrome常用快捷键
    stl本子
  • 原文地址:https://www.cnblogs.com/websharehome/p/7998931.html
Copyright © 2011-2022 走看看