标签:
你可以使用括号表示分组:
示例
\w+\W+\w+\W+\w+ = \w+(\W+\w+){2}
\w+\W+\w+\W+\w+\W+\w+\W+\w+\W+\w+ =
\w+(\W+\w+){5}
一篇文本中可以有一行或多行,行与行之间由换行符分隔,比如
LINE一行文字
LINE BREAK 换行符
LINE一行文字
LINE BREAK 换行符
...
LINE一行文字
LINE BREAK 换行符
注意,所有的文本都是以一行结束的,而不是以换行符结束。但是,任意一行都可能为空,包括最后一行。行的起始位置,是在换行符和下一行首字符之间的空间。考虑到单词分隔符,文本的起始位置也可以当做是首行位置。最后一行是最后一行的尾字符和换行符之间的空间。考虑到单词分隔符,文本的结束也可以认为是行的结束。基于此概念:
^.*&
表示匹配全文内容,因为行的开始符号也是一个字符,"."会匹配这个符号。找到单独的一行,可以使用
^.*?$在很多的正则表达式实现中,将^和$作为文本的开始符号和结束符号。
还有一些实现中,用\A和\z作为文本的开始和结束符号。
正则表达式(\w*)ility表示匹配以ility结尾的词。第一个被捕获的部分是由\w*控制的。比如,输入的文本内容中有单词accessibility,那么首先被捕获的部分是accessib。如果输入的文本中有单独的ility,则首先被捕获的是一个空字符串。
信用卡验证:\D*(\d\D*){16}
总结:
a
b
c
d
1
2
3
4
etc..
[abc]
[a-z]
\d
\w
\s
.
代表任何字符\d
表示
“数字”\w
表示”字母”, [0-9A-Za-z_]
\s
表示 “空格, 制表符,回车或换行符”[^abc]
\D
\W
\S
{4}
{3,16}
{1,}
?
*
+
?
表示 “零次或一次”*
表示 “大于零次”+
表示 “一次或一次以上”(Septem|Octo|Novem|Decem)ber
\b
^
$
\A
\z
\1
\2
\3
etc. (在匹配表达式和替换表达式中都可用).
\
[
]
{
}
?
*
+
|
(
)
^
$
[
]
\
-
^
\
标签:
原文地址:http://www.cnblogs.com/CoffeeEddy/p/5615374.html