正则表达式入门经典(学习笔记五)——正则表达式中的圆括号

1.圆括号有什么用?

正则表达式中的圆括号有两种功能:一是表示分组;二是表示可选择性。

2.使用圆括号分组

园括号定义了一个组,这个组模式匹配的内容会被捕获并指定给变量,变量的编号会按照模式中圆括号出现的次序依次进行。

A2233

((\w(\d{2}))(()(\d{2})))

在Komodo Regular Expression Toolkit中

Group Match Variables

Variable Value

$1 A2233

$2 A22

$3 22

$4 33

$5

$6 33

3.可选择性

根据可以选择的情况建立支持二选一或多选一的应用,涉及到使用圆括号和|元字符(有时候称为吧(bar)字符)——后者用于表示逻辑或的意思。

(gray|grey)或者gr(a|e)y也可用字符类,gr[ea]y 使用字符类来代替选择通常会提高匹配效率

(Doctor|Dr|Dr\.) (Doctor|Dr\.?)

不平衡的交替选择 (a|ab) 修改为 (ab|a)

4.非捕获的圆括号

(?:the-non-captured-content) 当在圆括号后面放置一个问号和一个冒号是,相应的这对圆括号就不会再捕获内容了。

减少要处理的组数,利于编程

Doctor Firstname LastName

Dr Firstname LastName

Dr. Firstname LastName

(Doctor|Dr|Dr.)(\s\w{1,}\s)(\w{1,}) 改为 (Doctor|Dr|Dr.)(?:\s\w{1,}\s)(\w{1,})

5.反向引用 back references backreferences

检测重复单词 \<([A-Za-z]) +\1\>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值