热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何使用正则表达式

如果认真思考一下那些问题场景,你就会发现它们不外乎两种情况:一种是查找特定的信息(搜索),

1.2   如何使用正则表达式
    如果认真思考一下那些问题场景,你就会发现它们不外乎两种情况:一种是查找特定的信息(搜索),另一种是查找并编辑特定的信息(替换)。事实上,从根本上来讲,那正是正则表达式的两种基本用途:搜索和替换。
给定一个正则表达式,它要么匹配一些文本(进行一次搜索),要么匹配并替换一些文本(进行一次替换)。
1.2.1 用正则表达式进行搜索
    正则表达式的主要用途之一是搜索变化多端的文本,比如刚才描述的搜索单词car的场景:你要把car、CAR、Car,或CaR都找出来,但这只是整个问题比较简单的一部分(又许多搜索工具都可以完成不区分字母大小写的搜
索)。比较困难的部分是确保scar、carry和incarcerate之类的单词不会被匹配到。一些比较高级的编辑器提供了"Match Only Whole Word(仅匹配整
个单词)"选项,但还有许多编辑器并不具备这一功能,而你往往无法在你正在编辑的文档里做出这种调整。使用正则表达式而不是纯文本car进行搜索就可以解决这个问题。
 ※  提示 :想知道如何解决这个问题吗?你们其实已经见过答案了--它就是我们刚才给出的示例语句:\b[Cc][Aa][Rr]\b
    请注意,“等于”比较(比如说,用户给出的电子邮件地址是否匹配这
个正则表达式?)本质上也是一种搜索操作,这种搜索操作会对用户所提供
的整个字符串进行搜索以寻找一个匹配。与此相对的是子字符串搜索,子字符串搜索时“搜索”这个词的普通含义。
1.2.1 用正则表达式进行替换
    正则表达式搜索的威力非常强大,非常有用,而且比较容易学习和掌握。
许多示例都与“匹配”有关。不过,正则表达式的真正威力体现在替换操作方面,比如我们刚才所描述的需要把URL地址字符串替换为可点击的URL地址场景:这需要先把相关文本里的URL地址字符串找出来(比如说,通过搜索
以http://或https://开头、以句号、逗号或空白字符结尾的字符串),再把找到的URL地址字符串替换为HTML语言的" ... "元素,如下所示:
    http://www.phpcq.com/
    替换结果:
    http://www.phpcq.com/
    绝大多数应用程序的 "Search and Replace"(搜索和替换)选项都可以完成这种替换操作,但使用一个正则表达式来完成这个任务将简单得让人难以置信。      


推荐阅读
author-avatar
lovely尤研君2007
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有