html 显示搜索结果,搜索结果高亮显示(不改变html标签)
一、问题的产生 搜索结果高亮显示,在新闻标题,来源之类的地方好做,只需要用str.Replace(keyword,"font style=/"color:red;/"" + keyword +"/font");这样的方法就可实现。 例如:新闻内容里的图片img alt="" src="Upload/1.jpg" /,搜索时使用的关键字为oa
一、问题的产生
搜索结果高亮显示,在新闻标题,来源之类的地方好做,只需要用str.Replace(keyword,"");这样的方法就可实现。
例如:新闻内容里的图片,搜索时使用的关键字为oa,则会将新闻内容中这张图片替换为oad/1.jpg" />,这张图片就显示不出来了。
二、实现原理
再次,将搜索结果替换为高亮显示状态;
三、实现代码
以下代码是网上搜集的,来源不详,在此对作者表示感谢。
public static string Reg(string input, string replace)
{
//设置高亮样式
string replaceformat = "";
System.Text.RegularExpressions.Regex reg = new System.Text.RegularExpressions.Regex(String.Format("{0}", replace), System.Text.RegularExpressions.RegexOptions.Multiline);
return reg.Replace(input, string.Format(replaceformat, replace));
}
///
/// 设置各个html部分为自定义标号
///
/// 输入内容
/// 匹配集合
/// 替换的字串
public static string protectHtml(string input, ref System.Text.RegularExpressions.MatchCollection matches)
{
//匹配html的正则
System.Text.RegularExpressions.Regex htmlReg =
new System.Text.RegularExpressions.Regex(@"/<.>", System.Text.RegularExpressions.RegexOptions.Multiline);
//获取匹配集合
matches = htmlReg.Matches(input);
//设置替换字串
string markFormat = "[[{0}]]";
//替换html,记录位置
for (int i = 0; i < matches.Count; i++)
{
input = input.Replace(matches[i].Value, string.Format(markFormat, i));
}
return input;
}
///
/// 将标号恢复html
///
/// 高亮设置好的字串
/// 匹配集合
/// 最终字串
public static string restoreHtml(string input, System.Text.RegularExpressions.MatchCollection matches)
{
//设置替换字串
string markFormat = "[[{0}]]";
for (int i = 0; i < matches.Count; i++)
{
input = input.Replace(string.Format(markFormat, i), matches[i].Value);
}
return input;
}
使用方法:
System.Text.RegularExpressions.MatchCollection matches = null;
temp = Reg(temp, KeyWords);//替换关键字为高亮显示
html 显示搜索结果,搜索结果高亮显示(不改变html标签)相关推荐
- 商城-商品搜索(品牌统计、规格统计、条件筛选、搜索分页排序、高亮显示)
用户搜索的时候,除了使用分类搜索外,还有可能使用品牌搜索,所以我们还需要显示品牌数据和 规格数据,品牌数据和规格数据的显示比较容易,都可以考虑使用分类统计的方式进行分组实现. 1 品牌统计 看下面的S ...
- 安卓自定义布局显示流式搜索记录
安卓自定义布局显示流式搜索记录 老规矩,先上效果图(环境:API 30 , AS 4.0) OKK,开始动手! 第一步:自定义流式布局 XFlowLayout ,继承ViewGroup,然后重写 on ...
- html显示elasticsearch,ElasticSearch查询:高亮显示(10)
什么是高亮显示 根据关键字搜索时,搜索出的内容中的关键字会显示不同的颜色,称之为高亮百度搜索关键字"elasticsearch" 京东商城搜索"iphone xs max ...
- python3 文件内容搜索 文件名搜索 目录遍历
目录 目录遍历 文件名搜索 文件内容搜索 关键字搜索整合 完整代码 目录遍历 首先我们来看如何实现目录遍历 目录遍历的过程很简单: 将目标路径作为当前目录 罗列出当前目录下的所有内容 判断每一个目标是 ...
- Android 百度地图之全局搜索周边搜索全国搜索城市路线规划(升级版附源码)
这个是今年3月份做的,拿出来分享哈,之前的一篇结构单一,现在这个新增路线规划: 路线1:无地铁 路线2:时间快 路线3:少换乘 路线4:少步行 如下图: 2.地点搜索(局部搜索)如下图: 3 定位功能 ...
- 《iVX 高仿美团APP制作移动端完整项目》02 搜索、搜索提示及类别需求分析思路及制作流程
点击整个专栏查看其它系列文章 (系列文章更新中-):<iVX 高仿美团APP制作移动端完整项目> 项目界面预览: 一.搜索制作 在上一节中我们完成了标题头的制作,接下来我们查看如何制作搜索 ...
- 微信小程序搜索,搜索历史,清除搜索历史,以及点击搜索历史实现搜索功能
微信小程序搜索,搜索历史,清除搜索历史,以及点击搜索历史实现搜索功能 热搜内容一般从接口遍历的,实现方法基本和搜索历史差不多 wxml页面 <view class="search-he ...
- 淘宝首页的搜索规律 高级搜索页搜索规律 淘宝商家应对的优化策略
探索淘宝掌柜们最关心的问题:淘宝搜索排名有规律可循吗?淘宝的关键词是自然而然的排名呢?还是有规律可循呢?我想这个答案是肯定的,正所谓无规不成方圆,任何事情都有他的规律可循,就看你是怎么去发现了,今天我 ...
- 基于vue与element-ui写出的关于搜索框搜索关键字,下方关键字高亮的demo
这是一个基于vue与element-ui写出的关于搜索框搜索关键字,下方关键字高亮的demo 希望对大家有所帮助 效果如下: <template><!-- 测试 -->< ...
最新文章
- Oracle脚本批量导入时,输出日志文件
- Nginx+Firebug 让浏览器告诉你负载均衡将请求分到了哪台服务器
- 操作系统内核(linux)
- ABAP知识:LIKE LINE OF 和LIKE TABLE OF
- bufferedreader接收不到数据_PS4、Xbox手柄和Switch跨次元组队?全靠八位堂USB无线接收器...
- streaming接mysql数据库_[Spark streaming举例]-- 实时统计并且存储到mysql数据库中
- Android单元测试 mock Context,mock静态类的静态方法,测试方法的顺序
- Ubuntu开启Mongodb 外网访问
- 微信APP支付开发步骤及要点
- MATLAB拟合优度检验
- 敏捷团队章程的实践精要
- 通过爬虫获取免费IP代理,搭建自己的IP池(http)
- Unitue_逆流的处事原则
- Crosses and Crosses
- 波士顿大学计算机硕士排名,GPA3.25却获波士顿大学计算机硕士录取
- 华为MateBook电脑PAK-AL09救砖教程
- 【一文带你读懂机器学习】xgboost原理
- Kafka3.0 SASL安全认证
- FTP协议(指令集)
- 实战:如何优化宝贝标题?
热门文章
- vim中Mapping already in use: LocalLeaderis, mode n错误解决的方法解释
- Linux 学习笔记_10_Shell编程_2_Shell编程语法(三)
- CLR Via CSharp读书笔记(26) - 计算限制的异步操作
- iPhone开发教程之Core Data 常见问题的总结
- 服务器mysql数据库安装教程视频教程_MySQL数据库管理系统安装实际操作_MySQL教程视频 - 动力节点...
- python解析word_word文档的python解析
- SAP报表开发工具 Report Painter
- ABAP检查日期and时间合法性的函数
- SAP相关会计科目的设置OBYC
- Debug时如何跳过(不执行)某些代码