开始使用正则表达式

一些细节的完善

在上篇文章中,我们简单使用了一个正则完成了一些东西,但是也发现了一些问题.那个在线工具并不怎么好用…
经常遇到输入之后,没有匹配.
这也是 web 程序经常遇到的尴尬.所以,我们使用本地应用来进行处理.
笔者的是 mac10.10 ,使用的工具叫做 RegExRx .大家可以选择一款合适的使用.( windows 下的正则程序更加多,功能也很强大)

开始正则之旅

明确了正则的用途之后,我们开始使用正则表达式.还是从一些实际案例出发,我很讨厌一开始就摆上 N 多得概念, 列举出 N 多得符号,根本不让人好好阅读嘛!

符号的延伸

上次我们使用了匹配数字的符号 \d,这个是表示数字的意思,但是它只能表示一位数字,于是,我又使用了{m,n}这个符号.
\d还有一种表示方法就是 [0-9] ,[]是字符串列举的意思.
比如 [abc]表示匹配 a或者b或者c,和\d一样,它只能匹配一个.
常用模式的列举:
[0-9] :表示数字 等价于 \d

[a-z] :表示小写字母

[A-Z] :表示大写字母

在列举的前面加上 ^即可表示 ,比如
[^0-9] :表示非数字

简写的的形式比如 \d,如果要取反,则小写改大写(熟悉 Vim 的人一定亲切),如:
\D:表示非数字

\w 表示单词字符,在英语环境下,等价于 [_a-zA-Z0-9],就是常说的:字母数字下划线
同理,把它大写,就是取反
\W 表示非单词字符,除掉字母数字下划线的内容

匹配空白字符

\s:表示空白字符( space),它和 [ \t\n\r]等价(分别是 空格 制表符 换行符 回车符)
注:有些匹配工具不会高亮换行符号和回车符号
那么很自然的想到
\S 匹配非空白字符,和[ \t\n\r]等价,当然,也可以 [^\s]

匹配任何字符

使用 .可以匹配任何字符,一个点只能匹配一个

使用量词

在最开始的时候,我们已经使用了量词的符号 {},用法也已经解释过了.比如:

.{8} 匹配8个任意字符
但是在实际应用中,我们有三个特殊的量词是大量使用的:
? :表示出现0次或者1次

* :表示出现0次或者多次

+ :表示出现1次或者多次

结语

这次是一个比较枯燥的符号认知的过程.好在,常用的符号我们已经学习完毕,从下篇开始,我们做大量的练习,并学习更高级的知识

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值