正则表达式

来源:互联网 发布:3d蓝光网络机顶盒 编辑:程序博客网 时间:2024/06/10 22:14

表 1. 字符类

字符含义举例.匹配任意一个字符abc.可以匹配abcdabc9[]匹配括号中的任意一个字符[abc]d可以匹配adbdcd-[]括号内表示字符范围[0-9a-fA-F]可以匹配一位十六进制数字^位于[]括号内的开头,匹配除括号中的字符之外的任意一个字符[^xy]匹配除xy之外的任一字符,因此[^xy]1可以匹配a1b1但不匹配x1y1[[:xxx:]]grep工具预定义的一些命名字符类[[:alpha:]]匹配一个字母,[[:digit:]]匹配一个数字

表 2. 数量限定符

字符含义举例?紧跟在它前面的单元应匹配零次或一次[0-9]?\.[0-9]匹配0.02.3.5等,由于.在正则表达式中是一个特殊字符,所以需要用\转义一下,取字面值+紧跟在它前面的单元应匹配一次或多次[a-zA-Z0-9_.-]+@[a-zA-Z0-9_.-]+\.[a-zA-Z0-9_.-]+匹配email地址*紧跟在它前面的单元应匹配零次或多次[0-9][0-9]*匹配至少一位数字,等价于[0-9]+[a-zA-Z_]+[a-zA-Z_0-9]*匹配C语言的标识符{N}紧跟在它前面的单元应精确匹配N次[1-9][0-9]{2}匹配从100999的整数{N,}紧跟在它前面的单元应匹配至少N[1-9][0-9]{2,}匹配三位以上(含三位)的整数{,M}紧跟在它前面的单元应匹配最多M[0-9]{,1}相当于[0-9]?{N,M}紧跟在它前面的单元应匹配至少N次,最多M[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}匹配IP地址

表 3. 位置限定符

字符含义举例^匹配行首的位置^Content匹配位于一行开头的Content$匹配行末的位置;$匹配位于一行结尾的;号,^$匹配空行\<匹配单词开头的位置\<th匹配... this,但不匹配ethernettenth\>匹配单词结尾的位置p\>匹配leap ...,但不匹配parentsleepy\b匹配单词开头或结尾的位置\bat\b匹配... at ...,但不匹配catatexitbatch\B匹配非单词开头和结尾的位置\Bat\B匹配battery,但不匹配... attendhat ...

表 4. 其它特殊字符

字符含义举例\转义字符,普通字符转义为特殊字符,特殊字符转义为普通字符普通字符<写成\<表示单词开头的位置,特殊字符.写成\.以及\写成\\就当作普通字符来匹配()将正则表达式的一部分括起来组成一个单元,可以对整个单元使用数量限定符([0-9]{1,3}\.){3}[0-9]{1,3}匹配IP地址|连接两个子表达式,表示或的关系n(o|either)匹配noneither


原创粉丝点击