Chapter 1 正则表达式入门

1 正则表达式简介

“正则表达式是描述一组字符串特征的模式,用来匹配特定的字符串。”

                                                                                                               -------图灵奖得主Ken Thompson

正则表达式最早出现于20世纪40年代,30年后真正出现在程序设计领域。如今,正则表达式成为sed,vim,grep,awk等类Linux操作系统衍生出得工具集重要的组成部分。正则表达式威力强大,一行正则表达式往往能实现很大篇幅的普通程序才能实现的功能。然而不幸的是,成为正则表达式的“黑带高手”并不是一件容易的事,通常要通过大量的实践才能达到。

2 学习工具

分别有线上和线下的学习正则表达式的工具。

2.1 Regexpal网站

通过访问http://www.regexpal.com/,可以看到如下图的页面,通过输入正则表达式和测试文本可以看到匹配结果,使用很方便。

2.2 Reggy软件

在mac操作系统下可以下载Reggy软件,软件界面如下图,使用同样十分简单方便,并且不需要联网操作。

3 简单的模式匹配

3.1 匹配数字

\d和[0-9]都能用来单个匹配阿拉伯数字,如果只想匹配某几个数字,比如匹配4和6,可以使用[46]

3.2 匹配非数字

可以通过给上述表达式添加“^”的方式来匹配非数字,即[^\d],[^0-9],另外还有一种简答的方式即,\D

3.3 匹配单词字符和非单词字符

\w可用来匹配单词字符,即字母、数字、下划线,在英语环境中等效于[_a-zA-Z0-9]。和匹配非数字的原理一样,\W可以用来匹配空格、标点及其他非字母和非数字字符。

3.4 匹配空白字符和非空白字符

\s可用来匹配空格、制表符、回车符及换行符,即和字符组:[ \t\r\n]的效果一样。不难想象,\S可用来匹配非空白字符。

3.5 匹配任意字符和量词

点号可以匹配除行结束符以外的任意字符,当要匹配一定数目的任意字符时,例如要匹配4个字符,如果使用4个点号:....,会比较麻烦。这时可以使用量词的方法,即.{4}。同时,量词形如:{,4}、{4,6}、{4,}分别表示不多于4个,4-6个及不少于4个。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值