js高亮搜索问题

落丶枫 2019-09-19 05:16:48
需要做一个日志文件的高亮搜索,但是输入关键字p之后,把文本中的<p>标签都搜索出来了,并且文本样式改变了。现在希望搜索时过滤掉html标签,并且文本显示格式要保持不变(保留段落空行),这个怎么做呢?
...全文
145 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
落丶枫 2019-09-20
  • 打赏
  • 举报
回复
引用 6 楼 文盲老顾 的回复:
我看了你最开始的两张图,你应该是在html里搜索吧 那么,在页面上能显示为<p>的不符,他的html是<p>,所以不用担心修改正则后,找不到内容荣 var re = searchText.replace(/[\\\.\+\*^$(){}\[\]-]/gi,'\\$1') // 将搜索文字调整下,避免出现特殊符号后正则异常 var regExp = new RegExp(''+re+'(?=[^>]*(<|$))','gi') // 检索所有内容在标签之外的文本
修改正则表达式后问题解决了,感谢
文盲老顾 2019-09-20
  • 打赏
  • 举报
回复
我看了你最开始的两张图,你应该是在html里搜索吧 那么,在页面上能显示为<p>的不符,他的html是<p>,所以不用担心修改正则后,找不到内容荣 var re = searchText.replace(/[\\\.\+\*^$(){}\[\]-]/gi,'\\$1') // 将搜索文字调整下,避免出现特殊符号后正则异常 var regExp = new RegExp(''+re+'(?=[^>]*(<|$))','gi') // 检索所有内容在标签之外的文本
落丶枫 2019-09-20
  • 打赏
  • 举报
回复
引用 4 楼 心怀啊 的回复:
更改正则表达式,匹配输入字符串右边第一个字符不为右尖括号
这样改如果说文本域text中存在纯文本形式的"<p>"以及其他"<...>"是不是就没法查找到了?能不能搜索时只过滤掉html标签,如果文本中存在纯文本"<p>"仍然能够搜索到?
心怀啊 2019-09-19
  • 打赏
  • 举报
回复
更改正则表达式,匹配输入字符串右边第一个字符不为右尖括号
1234Wu 2019-09-19
  • 打赏
  • 举报
回复
应该是操作p的节点吧. 改一下节点$("#consoleLog>p"),或者统一给p一个class.
落丶枫 2019-09-19
  • 打赏
  • 举报
回复
引用 1 楼 心怀啊 的回复:
.html改为.text
改成text以后<p>标签就失效了,搜索之后文本格式就变了
心怀啊 2019-09-19
  • 打赏
  • 举报
回复
.html改为.text

87,992

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧