正则表达式 知识量:10 - 22 - 55
正则表达式除了用于查找外,另一个主要用途就是进行替换,而是通常用于复杂的替换。使用回溯引用可以方便的进行复杂的替换操作。
示例文本:替换.com网址文本为可点击的链接。
Click www.baidu.com to baidu.Click www.163.com to netease.
正则表达式:
(www\.\w+\.com)
替换内容:
<a href="$1">$1</a>
结果:
New Text |
---|
Click <a href="www.baidu.com">www.baidu.com</a> to baidu.Click <a href="www.163.com">www.163.com</a> to netease. |
以上回溯引用实现了对网站地址到链接的转换。其中,正则表达式整体需要用括号括起来成为一个子表达式,“$1”用于在替换内容中指向第一个子表达式,这是必要的格式。在JavaScript中语法是如此,但是该格式在其他不同的语言中,相关的规定很可能不同,应根据具体语法规定来操作。
回溯应用还可以用于大小写替换,这需要用到以下元字符。
元字符 | 说明 |
---|---|
\l | 把下一个字符转换为小写 |
\u | 把下一个字符转换为大写 |
\L | 把\L到\E之间的字符全部转换为小写 |
\U | 把\U到\E之间的字符全部转换为大写 |
\E | 结束\L或\U转换 |
如上所示,\l和\u是把它们相邻的下一个字符(或子表达式)转换为小写或大写。\L和\U会把从它们开始到\E结束的字符全部转换为小写或大写。
需要注意的是:只有部分正则表达式的实现(语言)支持以上元字符,使用前要先了解所用语言是否支持。
示例文本:
Click www.baidu.com to baidu.Click www.163.com to netease.
正则表达式:
(www\.\w+\.com)
替换内容:
\U$1\E
结果:
New Text |
---|
Click WWW.BAIDU.COM to baidu.Click WWW.163.COM to netease. |
Copyright © 2017-Now pnotes.cn. All Rights Reserved.
编程学习笔记 保留所有权利
MARK:3.0.0.20240214.P35
From 2017.2.6