博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
字符组转译序列
阅读量:4050 次
发布时间:2019-05-25

本文共 1172 字,大约阅读时间需要 3 分钟。

-- Start

还记得我们在这一节中是如何匹配数字的吗? 对了, 是[0-9], 事实上如果你这样去匹配一个数字,别人可能要笑话你 out 了, 更常用的是\d,而且 \d 比前者更强大, 因为如果工具支持 Unicode,它还可以匹配中文全角数字,在 EmEditor 中试一试吧。

有匹配数字的需求,当然肯定会有匹配数字的需求,试一试 \D 吧。当然你也可以用 [^0-9] [^\d]

如果你想匹配一个组成单词的字符,该怎么办呢? 试一试 [a-zA-Z0-9_] 吧,当然更常用的是 \w,而且 \w 比前者更强大,因为如果工具支持 Unicode, 它还可以匹配汉字,在 EmEditor 中亲自操练一下吧。

当然,如果让你匹配一个组成单词的字符,该怎么办呢?不知道? 好好想想。看看上面的非数字,你猜对了,是 \W,当然也可以这样[^\w]

大家知道什么叫空白字符吗? 像空格、tab等这类字符我们称之为空白字符,因为我们无法看到它们。我们可以用 [ \t\v\r\n\f] 来匹配空白字符,当然更常用的是 \s,那如何匹配非空白字符呢? 试一试 \S 吧,当然你也可以用[^\s]

恭喜你,你又学会了6个元字符。

元字符  名称  匹配对象
.  点号(dot)  单个任意字符
\n  换行(newline)  换行
\r  回车(return)  回车
\t  制表符(Tab)  制表符
[...]  字符组(Character Class)  列出的任意字符
[^...]  排除型字符组(Negated Character Class)  未列出的任意字符
\d 数字(digit) 数字
\D   非数字
\w 单词(word) 单词字符
\W   非单词字符
\s 空白字符(whitespace) 空白字符
\S   非空白字符
^  脱字符(caret)  行的起始位置
$  美元符(dollar)  行的结束位置
\<     单词的起始位置
\>     单词的结束位置
\b  边界(Boundary)  单词边界
\B     非单词边界
(?=...)  肯定顺序环视(Positive Lookahead)  成功如果右边能够匹配
(?!...)  否定顺序环视(Negative Lookahead)  成功如果右边不能够匹配
(?<=...)  肯定逆序环视(Positive Lookbehind)  成功如果左边能够匹配
(?<!...)  否定逆序环视(Negative Lookbehind)  成功如果左边不能够匹配
|  竖线(bar)  匹配分割两边的任意一个表达式

---更多参见:

-- 声 明:转载请注明出处
-- Last Updated on 2012-05-12
-- Written by ShangBo on 2012-04-23
-- End

你可能感兴趣的文章
SSH框架总结(框架分析+环境搭建+实例源码下载)
查看>>
自定义 select 下拉框 多选插件
查看>>
js获取url链接携带的参数值
查看>>
gdb 调试core dump
查看>>
gdb debug tips
查看>>
arm linux 生成火焰图
查看>>
linux和windows内存布局验证
查看>>
linux insmod error -1 required key invalid
查看>>
linux kconfig配置
查看>>
linux不同模块completion通信
查看>>
linux printf获得时间戳
查看>>
C语言位扩展
查看>>
linux irqdebug
查看>>
git 常用命令
查看>>
linux位操作API
查看>>
uboot.lds文件分析
查看>>
uboot start.s文件分析
查看>>
没有路由器的情况下,开发板,虚拟机Ubuntu,win10主机,三者也可以ping通
查看>>
本地服务方式搭建etcd集群
查看>>
安装k8s Master高可用集群
查看>>