正则表达式基础

来源:互联网 发布:zbrush也没有mac版 编辑:程序博客网 时间:2024/06/06 13:13

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

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

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

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

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

 \( \)           子模式匹配,\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}

0 0
原创粉丝点击