1、Regex.Replace,将字符串中匹配的内容替换为指定的内容。
2、将所有连续的a替换为一个A(原需求:把连续的空格替换为一个空格):
string s = Regex.Replace("你aaa好aa哈哈a你", "a+", "A");
3、删除所有连续的a,其实就是将连续的a替换为空字符串。
4、练习1:将文本中连续的空格替换为一个空格。
5、如果匹配中有group,还可以在替换字符串中用$number来进行引用替换。例子,将中文双引号替换为单引号,string s1 = "string s1 = “sasdfadsf”;string s2 = “哈哈哈哈”";s1 = Regex.Replace(s1, "“(.*?)”", "\"$1\"");//注意贪婪的问题。
5、为什么上面需要$1,因为用到被替换的值了,引用!
6、string s = Regex.Replace("年龄=20", @"(.+)=(.+)", "$2是$1")
7、练习1:将一段文本中的。MM/DD/YYYY格式的日期转换为YYYY-MM-DD格式 ,比如“我的生日是05/21/2010耶”转换为“我的生日是2010-05-21耶”。
8、练习2:给一段文本中匹配到的url添加超链接,比如把http://www.test.com替换为<a href="http://www.test.com"> http://www.test.com</a>。参考代码:
//发帖编辑器中超链接自动识别的实现原理。
string text = "我找到一个新网站http://www.qq.com,能下载歌曲,http://mp3.baidu.com也能下载。";
string s = Regex.Replace(text,@"(http://[a-zA-Z0-9\.\?&=]+)","<a href='$1'>$1</a>");//这里的表达式不是非常准确。
9、因为这个是整体做为一个组,比较特殊,难以理解,先把日期转换的理解了就好理解了。 测试文本:我找到一个新网站http://www.qq.com,能下载歌曲,http://mp3.baidu.com也能下载。