正则表达式语法
来源:互联网 发布:windows 10 pro 编辑:程序博客网 时间:2024/04/27 21:48
正则表达式有多種不同的风格。下表是在PCRE中元字符及其在正则表达式上下文中的行为的一个完整列表:
n
」匹配字符「n
」。「\n
」匹配一个换行符。序列「\\
」匹配「\
」而「\(
」则匹配「(
」。\n
」或「\r
」之后的位置。\n
」或「\r
」之前的位置。z
」以及「zoo
」。*等价于{0,}。zo+
」能匹配「zo
」以及「zoo
」,但不能匹配「z
」。+等价于{1,}。do(es)?
」可以匹配「does
」或「does
」中的「do
」。?等价于{0,1}。o{2}
」不能匹配「Bob
」中的「o
」,但是能匹配「food
」中的两个o。o{2,}
」不能匹配「Bob
」中的「o
」,但能匹配「foooood
」中的所有o。「o{1,}
」等价于「o+
」。「o{0,}
」则等价于「o*
」。o{1,3}
」将匹配「fooooood
」中的前三个o。「o{0,1}
」等价于「o?
」。请注意在逗号和两个数之间不能有空格。oooo
」,「o+?
」将匹配单个「o
」,而「o+
」将匹配所有「o
」。\
n
」之外的任何单个字符。要匹配包括「\
n
」在内的任何字符,请使用像「(.|\n)
」的模式。\(
」或「\)
」。(|)
」来组合一个模式的各个部分是很有用。例如「industr(?:y|ies)
」就是一个比「industry|industries
」更简略的表达式。Windows(?=95|98|NT|2000)
」能匹配「Windows2000
」中的「Windows
」,但不能匹配「Windows3.1
」中的「Windows
」。预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始。Windows(?!95|98|NT|2000)
」能匹配「Windows3.1
」中的「Windows
」,但不能匹配「Windows2000
」中的「Windows
」。预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始(?<=95|98|NT|2000)Windows
」能匹配「2000Windows
」中的「Windows
」,但不能匹配「3.1Windows
」中的「Windows
」。(?<!95|98|NT|2000)Windows
」能匹配「3.1Windows
」中的「Windows
」,但不能匹配「2000Windows
」中的「Windows
」。z|food
」能匹配「z
」或「food
」。「(z|f)ood
」则匹配「zood
」或「food
」。[abc]
」可以匹配「plain
」中的「a
」。[^abc]
」可以匹配「plain
」中的「p
」。[a-z]
」可以匹配「a
」到「z
」范围内的任意小写字母字符。[^a-z]
」可以匹配任何不在「a
」到「z
」范围内的任意字符。er\b
」可以匹配「never
」中的「er
」,但不能匹配「verb
」中的「er
」。er\B
」能匹配「verb
」中的「er
」,但不能匹配「never
」中的「er
」。c
」字符。[A-Za-z0-9_]
」。[^A-Za-z0-9_]
」。\x41
」匹配「A
」。「\x041
」则等价于「\x04&1
」。正則表达式中可以使用ASCII编码。.(.)\1
」匹配两个连续的相同字符。常用正则表达式
用户名
/^[a-z0-9_-]{3,16}$/
密码
/^[a-z0-9_-]{6,18}$/
十六进制值
/^#?([a-f0-9]{6}|[a-f0-9]{3})$/
电子邮箱
/^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/
/^[a-z\d]+(\.[a-z\d]+)*@([\da-z](-[\da-z])?)+(\.{1,2}[a-z]+)+$/
URL
/^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/
IP 地址
/((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)/
或
/^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/
HTML 标签
/^<([a-z]+)([^<]+)*(?:>(.*)<\/\1>|\s+\/>)$/
Unicode编码中的汉字范围
/^[\u4E00-\u9FA5]+$/
- 正则表达式语法
- 正则表达式语法
- 正则表达式语法
- 正则表达式语法解析
- 正则表达式语法
- 正则表达式语法
- 正则表达式语法
- 正则表达式语法
- 正则表达式语法
- 正则表达式语法
- 正则表达式语法
- 正则表达式语法
- 参考:正则表达式语法
- 正则表达式语法
- 正则表达式语法
- 正则表达式语法
- 正则表达式语法
- 正则表达式语法
- CentOS 配置mysql允许远程登录
- Mysql数据库 hibernate保存数据时,Mysql主键需设定自增,否则报错!(Field 'id' doesn't have a default value)
- Asp.net MVC 实现图片上传剪切
- apache2.2.21 在centos5.7中的cookie问题
- jetty 运行时,在eclipse保存文件报错。
- 正则表达式语法
- LINUX平台epoll与WIN平台iocp的异同之处
- C# TimSpan 简单应用
- MySQL 数据库清理MyISAM Innodb表(支持MySQL5.1.6以上的版本)
- hclk pclk1 pclk2
- 想成为Google工程师?先回答这15个面试问题【这只是一必要条件】(四)
- linux KBuild MakeFile介绍 之二
- 资料待整合
- javaBean page范围