首页 > 系统 > 其他 >

正则表达式基础

2014-02-24

正则表达式是对字符串操作的逻辑表示,可以用来查找匹配文本。正则表达式由一般字符和特殊字符组成,特殊字符又称为元字符,常见的元字符有: 用来关闭后续字符的意义

正则表达式是对字符串操作的逻辑表示,可以用来查找匹配文本。正则表达式由一般字符和特殊字符组成,特殊字符又称为元字符,常见的元字符有:

\ 用来关闭后续字符的意义 . 匹配任何单个字符

* 匹配任意多个其前面出现的字符 ^ 在行或者字符串的起始处匹配

$ 在行或者字符串的末尾处匹配 […] 匹配方括号内的任意字符

\{n,m\} 匹配其前面出现的字符n到m次

\( \) 子模式匹配,用\n表示模式号

{n,m} 与\{ \}相同

+ 匹配前面正则表达式的一个或者多个实例

? 匹配前面正面正则表达式的零个或者一个实例

| 匹配|符号前后的正则表达式

( ) 匹配括号内部的正则表达式

[:alnum:] 用于匹配数字字符

[:alpha:] 用于匹配字母字符

[:blank:] 用于匹配空格或者tab

[:cntrl:] 用于匹配控制字符

[:digit:] 用于匹配数字字符

[:graph:] 用于匹配非空格字符

[:lower:] 用于匹配小写字符

[:print:] 用于匹配可显示的字符

[:punct:] 用于匹配标点符号

[:space:] 用于匹配空白字符

[:upper:] 用于匹配大写字母字符

[:xdigit:] 用于匹配十六进制数字

运算符的优先级为(从高到低):

[..] [==] [::] 用于排序的方括号符号

\metacharacter 转义字符

[] 方括号表达式

\(\) \digit 字表达式和后向引用

* ? + 前置字符重现的表达式

^ $ 锚点

正则表达式举例:

hello 位于一行内的hello

^hello 位于字符串首部的hello

hello$ 位于字符串尾部的hello

^hello$ 本行或者字符串仅仅包含hello

hel+o 字符串中出现hello helllo hellllo等

[Hh]ello 字符串出现Hello 或者hello

he?llo 字符串中出现hello或者hllo

h.llo 字符串中出现hello hallo等,h后要跟一个字符

hel\{2\}o 字符串出现hello

he\(l\)\1o 字符串中出现hello

匹配正整数可以用 ^[1-9]\d*$

匹配负整数可以用 ^-[1-9]\d*$

匹配邮政编码可以用 ^[1-9]\d{5}$

匹配IP地址可以用 \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}

相关文章
最新文章
热点推荐