C#字符串插入html标签

开发 后端
本文介绍C#字符串插入html标签,在C#里要进行忽略大小写的字符串替换,用string的Replace是很难做到的,即使花了天大的力气做到了,效率仍然是很低的,正确的方法应该是使用正则表达式。

C#字符串插入html标签

在C#里要进行忽略大小写的字符串替换,用string的Replace是很难做到的,即使花了天大的力气做到了,效率仍然是很低的,正确的方法应该是使用正则表达式。

要使用正则表达式,首先需要引用命名空间:

  1. using System.Text.RegularExpressions; 


然后,非常简单,使用:

  1. Regex.Replace(字符串,要替换的子串,替换子串的字符,RegexOptions.IgnoreCase) 

就可以达到目的了,其中***的参数RegexOptions.IgnoreCase即为指明忽略大小写

但是,我现在要为一组字符串中的所有匹配的子字符串加上高亮显示(就是让它的字体样式和字符串其它的部分不一样),用下面的语句在C#字符串插入html标签,确实可以实现高亮,但高亮显示的就成了搜索子串的搜索字符串了,大小写与原文有差异。

打个比方:我在"第十三种Asp.net实现"中搜索的keyString为"asp",替换后的字符串就成了"第十三种 asp.net实现",而不是希望的"第十三种 Asp.net实现"

  1. DocumentResume[i]=Regex.Replace(hitDoc.Get("resume"),keyString,"
    "+keyString+"",RegexOptions.IgnoreCase); 

所以,直接用正则表达式的Replace也不能达到我的需要,而要用到正则表达式的Match搜索方法(Match搜索单条,Matchs多条),然后在匹配的子串前后插入html标签,具体看下面的代码:

  1. string pain=hitDoc.Get("resume");//字符串  
  2. System.Text.RegularExpressions.MatchCollection mRegex.
    Matches(pain,keyString,RegexOptions.IgnoreCase);  
  3. //忽略大小写搜索字符串中的关键字  
  4. for(int j=0;j{  
  5. //j×31为插入html标签使pain字符串增加的长度,注意下面两句不能交换位置,否则将出现HTML标签插入错误。  
  6. painpain=pain.Insert((m[j].Index+keyString.Length+j*31),"");//关键字后插入html标签  
  7. painpain=pain.Insert((m[j].Index+j*31),"");//关键字前插入html标签  

当然,html标签也不是胡乱插好了就管用的。还要在要显示这个插完后的字符串的页面代码的head区加入下面的自定义样式

  1. <STYLE type=text/css>    
  2. Highlight {   
  3. color: #00FFFF;   
  4. font-style: italic;    
  5. font-size: larger;    
  6. }
  7. </STYLE> 

nutian:但正则表达式方式忽略大小写替换应该效率不是***,但也不是***,一般应用应该可以。以上介绍C#字符串插入html标签。

【编辑推荐】

  1. C#字符串进行分割
  2. 全面测试C#字符串
  3. C# out和ref传递数组
  4. 浅析C#定义整型数组
  5. C#数据库连接字符串
责任编辑:佚名 来源: CSDN
相关推荐

2009-08-07 14:46:59

C#匹配字符串

2009-08-07 14:22:56

C#字符串搜索

2009-08-07 14:34:33

C#模式字符串

2009-08-06 16:01:09

C#字符串函数大全

2009-08-26 13:24:54

C#字符串

2009-08-24 17:06:37

C#字符串

2009-08-07 14:15:21

C#字符串分割

2009-08-24 13:04:44

操作步骤C#字符串

2009-08-07 13:50:11

C#字符串

2009-08-28 10:39:37

C#数值字符串

2009-09-02 16:21:20

C#字符串

2009-08-11 10:26:49

C#算法C#字符串反转

2009-08-21 15:06:09

C#连接字符串

2009-09-04 10:26:09

Java和C#字符串类

2009-08-07 14:02:12

C#数据库连接字符串

2009-08-07 15:49:46

使用C#字符串

2009-08-06 17:24:08

C#字符串

2009-09-02 15:53:27

C#判断字符串应用

2009-09-02 15:56:49

C#格式化字符串

2009-09-01 17:50:23

C#截取字符串
点赞
收藏

51CTO技术栈公众号