本网站上的更多内容 |
简介 |
正则表达式快速入门 |
正则表达式教程 |
替换字符串教程 |
应用程序和语言 |
正则表达式示例 |
正则表达式参考 |
替换字符串参考 |
书籍评论 |
可打印 PDF |
关于本网站 |
RSS 提要和博客 |
通过将正则表达式的部分放在圆括号或括号中,你可以将正则表达式的该部分分组在一起。这允许你对整个组应用量词,或将交替限制在正则表达式的部分。
只有括号可用于分组。方括号定义字符类,而大括号由具有特定限制的量词使用。
除了将正则表达式的部分组合在一起,括号还创建了一个编号的捕获组。它存储括号内正则表达式部分匹配的字符串部分。
正则表达式 Set(Value)? 匹配 Set 或 SetValue。在第一种情况下,第一个(也是唯一一个)捕获组保持为空。在第二种情况下,第一个捕获组匹配 Value。
如果你不需要组捕获其匹配项,则可以将此正则表达式优化为 Set(?:Value)?。问号和开括号后的冒号是创建非捕获组的语法。开括号后的问号与正则表达式末尾的问号无关。最后的问号是量词,它使前一个标记可选。此量词不能出现在开括号后,因为在组的开头没有需要使其可选的内容。因此,即使这可能一开始会令人困惑,问号作为使标记可选的运算符和问号作为非捕获组语法的部分之间也没有歧义。还有其他类型的组使用 (? 语法与冒号以外的其他字符结合,本教程后面将对此进行解释。
color=(?:red|green|blue) 是另一个带有非捕获组的正则表达式。此正则表达式没有量词。
支持命名捕获的正则表达式风格通常有一个选项,可将所有未命名组转换为非捕获组。
捕获组可以轻松提取正则表达式匹配的一部分。你可以通过反向引用在正则表达式中重用文本。反向引用也可以在替换字符串中使用。有关详细信息,请查看替换文本教程。
| 快速入门 | 教程 | 工具和语言 | 示例 | 参考 | 书籍评论 |
| 简介 | 目录 | 特殊字符 | 不可打印字符 | Regex 引擎内部 | 字符类 | 字符类减法 | 字符类交集 | 简写字符类 | 点 | 锚点 | 单词边界 | 交替 | 可选项 | 重复 | 分组和捕获 | 反向引用 | 反向引用,第 2 部分 | 命名组 | 相对反向引用 | 分支重置组 | 自由间距和注释 | Unicode | 模式修饰符 | 原子分组 | 独占量词 | 前瞻和后顾 | 前瞻和后顾,第 2 部分 | 将文本保留在匹配之外 | 条件 | 平衡组 | 递归 | 子例程 | 无限递归 | 递归和量词 | 递归和捕获 | 递归和反向引用 | 递归和回溯 | POSIX 方括号表达式 | 零长度匹配 | 继续匹配 |
页面 URL:https://regexper.cn/brackets.html
页面上次更新时间:2019 年 11 月 22 日
网站上次更新时间:2024 年 3 月 15 日
版权所有 © 2003-2024 Jan Goyvaerts。保留所有权利。