vue3+TS前端JS实现 搜索关键词变红

news2024/11/25 23:45:54

起初在网上搜索获得的处理方式大都是类似这种:

但是实际使用中发现,对于汉字和数字是没有问题的,但是如果有字母就会出现问题。

1.只有汉字和数字的时候:匹配正常。

2.当有字母的时候:异常替换。

原因:第二次判断的时候,替换的html代码里面的字母也做了识别和标红替换

最后做了调整改用另一种方式,针对单字匹配和字符串匹配两种处理:

展示:

<li v-html="brightenKeyword('123abcd张三李四')"></li>

处理:

 const brightenKeyword = (contentText) => {
    //单字匹配时将文字标红
    let res = contentText;
    if (searchKey.value == '') {
      return res;
    } else {
      let wordsArray = contentText.split('');
      for (var i = 0; i < wordsArray.length; i++) {
        if (searchKey.value.includes(wordsArray[i])) {
          wordsArray[i] = "<span style='color: red;'>" + wordsArray[i] + '</span>';
        }
      }
      res = wordsArray.join('');
      return res;
    }
  };

  // const brightenKeyword = (contentText) => {
  //   // 字符串整串匹配时:仅需要当前方法
  //   let res = contentText; //res的初始值是不带任何红色格式的
  //   const Reg = new RegExp(searchKey.value, 'g');
  //   res = contentText.replaceAll(Reg, `<span style="color: red;">${searchKey.value}</span>`);
  //   return res;
  // };

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1022363.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

百度SEO优化技巧(选择、网站结构、内容优化、外链建设、数据分析)

百度关键词SEO优化介绍 SEO是搜索引擎优化的缩写&#xff0c;是指通过优化网站结构、内容和外部链接等方式&#xff0c;提高网站在搜索引擎中的排名&#xff0c;从而获取更多的访问量和流量。百度是中国最大的搜索引擎之一&#xff0c;对于企业来说&#xff0c;优化百度关键词…

千呼万唤openGauss资源池化系列培训来了

应openGauss广大用户要求&#xff0c;社区于近期推出openGauss资源池化培训系列。 关于资源池化 资源池化是openGauss 5.0.0 推出的重点特性&#xff0c;是openGauss基于内存池化和共享存储实现的数据库集群。数据在集群的计算节点内存、共享存储中实现共享。应用可以任意节点…

嵌入式学习攻略

嵌入式软件编程的基础 主要是学习编程语言、开发环境和形成自己的编程逻辑&#xff0c;为嵌入式软件开发打下良好的基础&#xff0c;编程语言建议为C和C语言。书籍中的例子都是比较经典的程序实例&#xff0c;尽量去搞懂&#xff0c;不要觉得太长或者太难了而放弃&#xff0c;…

[正确重装docker] Win10 重装 Docker 提示 Exising installation is up to date 的正确姿势

Win10 重装 Docker 报错 Exising installation is up to date 的一种情况是原来的 docker 没有卸载干净&#xff0c;或者说&#xff0c;没有正确卸载。 巧了&#xff0c;我就是直接删除了&#xff0c;因为一些原因重装了好几次&#xff0c;血泪史留给各位嘲笑。 一条正确的卸…

编程(48)----------网页打开的过程

一个网页的打开大致分为以下几步: 1.DNS查询 在进行网络访问过程中, 实际上所访问的是IP地址. 但输入的却仅仅是域名. 因为IP地址过于复杂不利于记忆. 因此, 需要将IP转换成更具有辨识度的域名. 通过输入域名, 以DNS进行转换为IP, 再发起请求. DNS在得到域名后会进行查询, …

P7075 [CSP-S2020] 儒略日(内附封面)

[CSP-S2020] 儒略日 题目描述 为了简便计算&#xff0c;天文学家们使用儒略日&#xff08;Julian day&#xff09;来表达时间。所谓儒略日&#xff0c;其定义为从公元前 4713 年 1 月 1 日正午 12 点到此后某一时刻间所经过的天数&#xff0c;不满一天者用小数表达。若利用这…

得帆信息副总裁——陈明:低代码企业内部推广场景建议

在之前的文章中有介绍过#企业内部如何做低代码的运营推广&#xff08;☜点击回顾精彩&#xff09;&#xff0c;感兴趣的可以结合之前的文章进行了解。 结合本人这几年的低代码落地推广经验&#xff0c;不论是由得帆主导的低代码平台运营推广&#xff0c;还是由客户自身主导进行…

广通优云完成2亿元C轮融资,加速平台级运维产品的技术创新

广通优云于近期完成2亿元C轮融资&#xff0c;松禾资本领投&#xff0c;朗玛峰创投、奇安投资、舜宇投资、天雅资本等机构跟投&#xff0c;皓石资本担任本轮独家财务顾问。资金将主要应用于公司产品创新研发、团队人才建设及市场生态开拓等方面。 在当前资本市场遇冷的背景下&a…

RSS阅读器

focus&#xff1a;免费、无广告、已停止维护[2020]、开源 也许后面我会维护更新。 Archive: https://www.ihewro.com/archives/948/ 开源代码&#xff1a;https://github.com/ihewro/Focus &#x1f370;借助RSShub开源项目&#xff0c;自带丰富订阅市场&#xff0c;尽可能简…

【大数据之Kafka】十四、Kafka-Eagle监控

Kafka-Eagle 框架可以监控Kafka 集群的整体运行情况&#xff0c;在生产环境中经常使用。 1 MySQL环境准备 https://blog.csdn.net/qq_18625571/article/details/130613704?spm1001.2014.3001.5501 2 Kafka环境准备 &#xff08;1&#xff09;关闭Kafka集群。 kf.sh stop&…

反向动力学Ik学习

参考文章&#xff1a;&#xff08;非本人原创&#xff09; 英文原文&#xff1a;Inverse Kinematics Techniques in Computer Graphics: A Survey (andreasaristidou.com) 知乎翻译文章&#xff1a; 【游戏开发】逆向运动学&#xff08;IK&#xff09;详解 - 知乎 (zhihu.co…

django创建web服务器

安装 pip install django 创建项目 django-admin startproject report django-admin startapp data //project下可创建多个app 执行使用 python manage.py migrate //orm代码到数据库 python manage.py runserver 0.0.0.0:80 权限管理 python manage.py createsuperuser 创建…

住宅区电力系统管理,这一点很重要!

随着现代社会对电力供应的不断增长需求&#xff0c;住宅小区的电力分配系统变得越来越复杂。电力是我们日常生活中不可或缺的一部分&#xff0c;因此确保小区的电力供应安全和稳定至关重要。 配电柜监控是确保电力系统安全和稳定运行的重要工具。它可以提高电力供应的可靠性&am…

掌动智能浅谈UI自动化测试工具的重要性

在现代软件开发中&#xff0c;用户界面(UI)的质量和可靠性对于一个应用的成功至关重要。为了确保应用在各种环境和设备上都能正常运行&#xff0c;开发团队需要进行全面的UI测试。为了提高测试效率和减少人为错误&#xff0c;UI自动化测试工具成为不可或缺的工具。本文将探讨UI…

Redis缓存实现及其常见问题解决方案

随着互联网技术的发展&#xff0c;数据处理的速度和效率成为了衡量一个系统性能的重要指标。在众多的数据处理技术中&#xff0c;缓存技术以其出色的性能优化效果&#xff0c;成为了不可或缺的一环。而在众多的缓存技术中&#xff0c;Redis 以其出色的性能和丰富的功能&#xf…

安卓系统--翻译手机rom语言 添加多国语言 编译apk 反编译ODEX 工具步骤解析

很多小品牌机型不具备多语言设置。国内大都是中文。要想换为其他语言除非固件支持。例如国际版固件等等。大厂基本都有中文或者英文或者其他语言配置。而小品牌机型只能通过修改rom来达到多语言调用. 工具步骤演示 今天给友友介绍一款工具&#xff0c;可以用来翻译手机rom语言…

Android Studio 打不开

现象&#xff1a;点击PC端上Android Studio 图标&#xff0c;没有反应&#xff0c;AS没有打开 环境&#xff1a;windows 11 解决办法&#xff1a; 1、找到任务管理器 2、发现后台进程中&#xff0c;有Android Studio 3、结束该任务。 4、再此点击Android Studio 图标&…

阿里系常用代码规范及工具

1. 前言 1.1 为什么需要代码规范 可能有同学觉得代码需要突出个人的特点&#xff0c;需要特异化&#xff0c;但是这样就会造成别人阅读起来很困难 代码不仅仅是交给机器来执行的&#xff0c;同时代码也是让其他同事来阅读的&#xff0c;如果代码不规范就会出现各种各样的问题&…

vscode:连接服务器进行远程开发调试

以下推荐一个使用远端服务器开发调试的方法&#xff0c;可以让我们像在本地编写调试程序一样简单&#xff1a;使用vscode vscode-remote插件 一、安装SSH 1.windows自带的openssh经测试不可用&#xff0c;建议先安装git&#xff0c;使用git中自带的ssh&#xff0c;方法如下&a…

【STL容器】list

文章目录 一、list定义二、list的迭代器三、list的元素操作四&#xff0c;list的优缺点 一、list定义 list本质是一个双向带头循环链表 template<class T> struct list_node {list_node* prev;T val;list_node* next; };template<class T> class list {typedef lis…