第三章 括号的使用(上)
3.1 分组
上一章提到过的量词只针对紧邻的字符(组)起作用,例如HTML语言中的标签<table></table>匹配:
<table[\s>][\s\S]+?</table>
其中忽略优先量词+?,只对紧邻的字符组[\s\S]起作用,如果需要对之前所有的部分起作用就需要用到圆括号(),写成:
(<table[\s>][\s\S])+?</table>
起到了将<table[\s>][\s\S]
看做一个整体的作用,即分组。
3.2 多选结构
括号的第二个作用就是制造出一个多选结构,两个或以上个表达式中都是合法匹配的表达式(适用多种情况时),多选结构的形式是(...|...),用竖线|分割子表达式,这些子表达式也叫多选分支,多选分支可以有好多个,只要有1个分支匹配成功即宣告匹配成功,否则匹配失败,可以类比C语言中的switch-case结构,失败就走default下的代码。
最近身边发生了一些事,整个人有点犯懒,后面的部分之后更。。。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。