正则表达式(2)
开发工具与关键技术:VS , ASP.NET.MVC;
作者:吴维杰
撰写时间:2019.04.13
正则表达式的主要作用是用来:验证,搜索和替换.
这里主要讲替换.
替换:就是使用表达式匹配到的字符串替换为指定的字符串.
1.题目:aajjdddklfoijioddvviieeenniinnff
答案: ([a-z])\1
解释:[a-z]:把小写字母的a-z从中匹配出来,
( ): 使用小括号指定一个子表达式后,匹配这个子表达式的文本(也就是此分组捕获的内容)可以在表达式或其他程序中作进一 步处理。默认情况下,每个分组会自动拥有一个组号,规则是:从左向右,以分组的左括号为标志,第一个出现的分组的组 号为1,第二个为2,以此类推。
\1: 后向引用用于重复搜索前面某个分组匹配的文本。例如,\1 代表分组1匹配的文本。
([a-z])\1:从题目匹配出从a-z中所有重复两个相同的小写字母.
效果:如下图:
再次使用第一个题目实现替换效果.
2.题目: aajjdddklfoijioddvviieeenniinnff
答案: ([a-z])\1
A$1
解释: ([a-z])\1:题目一已说明.
A$1:把第一个字母替换为大写的A.
([a-z])\1
A$1:匹配出连续出现两次的字母,并将第一个字母替换为大写字母A.
效果:如下图:
3.题目: <p>"wrqvvqrqwrvqrqwv"</p> <p>"rrererer"</p> <p>"3eewffsfsd"</p> <p>"各个国家有"</p> <p>"各个国家的国歌"</p> <p>"ewwrew33"</p>
答案(?<=<p>).*?(?=</p>)
解释:匹配出p标签里的所有字母和文字,并把p标签里的内容替换为欢迎光临.
效果:如下图: