正则表达式中的元字符

正则表达式中的元字符

元  字  符

意    思

例    子

/

说明要匹配的字符是一个特殊字符、常量或者反向引用。(反向引用重复上一次匹配。)

/n 匹配换行符

// 匹配 /

/( 匹配(

/) 匹配)

^

匹配字符串的开头位置

如果A是字符串中的第一个字符,^A 匹配A

$

匹配字符串的末尾位置

如果B是字符串中的最后一个字符,$B匹配B

*

匹配前面的字符0次或多次。

ba*rk 可以匹配 brk、bark、baark等等

+

匹配前面的字符1次或多次。

ba+rk 可以匹配bark、baark等等,但是不能匹配brk

?

匹配前面的字符0次或1次

ba?rk 只能匹配brk和bark

{n}

匹配一个字符恰好n次,其中n是一个整数

hob{2}it 可以匹配hobbit

(续表)  

元  字  符

意    思

例    子

{n,m}

匹配一个字符至少n次,最多m次,其中n和m都是整数

hob{2,3}it 只能匹配hobbit和hobbbit

.

匹配除null之外的任意单个字符

hob.it 可以匹配hobait、hobbit等等

(pattern)

匹配指定模式的一个子表达式。可以使用子表达式构成复杂的正则表达式。在这种子表达式中,可以访问单次的匹配,称为捕获(capture)

anatom(y|ies) 可以匹配anatomy和 anatomies

x|y

匹配x或y,其中x和y是一个或多个字符

war|peace 可以匹配 war 或 peace

[abc]

匹配中括号内的任意一个字符

[ab]bc 可以匹配 abc 和 bbc

[a-z]

匹配指定范围内的任意一个字符

[a-c]bc 可以匹配 abc、bbc和cbc

[: :]

指定一个字符类,可以匹配该类中的任何字符

[:alphanum:] 可以匹配字符0-9、A-Z和a-z

[:alpha:] 可以匹配字符A-Z和a-z

[:blank:] 可以匹配空格或tab键

[:digit:] 可以匹配数字 0-9

[:graph:] 可以匹配非空字符

[:lower:] 可以匹配小写字母a-z

[:print:] 与 [:graph:] 类似,不同之处在于[:print:] 包括空格字符

[:punct:] 可以匹配标点符号.,'''等等

[:space:] 可以匹配所有的空白字符

[:upper:] 可以匹配所有的大写字母A~Z

[:xdigit:] 可以匹配十六进制数字 0~9、A~F和a~f

[..]

匹配一个组合元素,例如多字符元素

[==]

指定等价类

/n

这是对前一次捕获的一个反向引用,其中n是一个正整数

(.)/1 可以匹配两个连续相同的字符。(.)可以匹配除null之外的任何单个字符,而 /1 则重复上次匹配的内容,即再次匹配相同的字符,因此可以匹配两个连续相同的字符

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值