前言
我想在网上最出名的正则相关的一篇文章就是《正则表达式30分钟入门教程》了,说实话这篇文章确实是我的正则入门,但是随着使用熟练,冗长的文章已经不能满足我了,在此做个归纳总结,用于快速查阅。
以下语法在Java中有效,大部分应该是通用的。
元字符
元字符,又叫字符集,就是用一些特殊符号表示特定种类的字符或位置。
匹配字符
.
匹配除换行符以外的任意字符w
匹配字母或数字或下划线或汉字s
匹配任意的空白符d
匹配数字
匹配位置
匹配单词的开始或结束
^
匹配字符串的开始$
匹配字符串的结束G
上一个匹配的结尾(本次匹配开始)A
字符串开头(类似^
,但不受处理多行选项的影响)字符串结尾或行尾(不受处理多行选项的影响)
z
字符串结尾(类似$
,但不受处理多行选项的影响)
重复
*
重复零次或更多次+
重复一次或更多次?
重复零次或一次{n}
重复n次{n,}
重复n次或更多次{n,m}
重复n到m次
字符转义
如果想匹配元字符本身或者正则中的一些特殊字符,使用转义。例如匹配
*
这个字符则使用*
,匹配这个字符,使用
\
。
需要转义的字符:$
, (
, )
, *
, +
, .
, [
, ]
, ?
, ,
^
, {
, }
, |
字符类
当需要匹配明确的字符或字符集合时候,就用到字符类。
特殊字符