Merge 4c48458c422ae6d99a67c19fe0227f05ecd3f012 into 70e38b70bc434c0b05d97d1aeea0127aea8147c8

This commit is contained in:
Jigao Luo 2025-03-26 23:50:49 -04:00 committed by GitHub
commit 85e01fc3cb
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -67,7 +67,7 @@
* [2.3.2 号](#232--号)
* [2.3.3 ? 号](#233--号)
* [2.4 {} 号](#24--号)
* [2.5 (...) 特征标群](#25--特征标群)
* [2.5 (...) 捕获组](#25--捕获组)
* [2.6 | 或运算符](#26--或运算符)
* [2.7 转码特殊字符](#27-转码特殊字符)
* [2.8 锚点](#28-锚点)
@ -257,9 +257,9 @@
[在线练习](https://regex101.com/r/Sivu30/1)
## 2.5 `(...)` 特征标群
## 2.5 `(...)` 捕获组
特征标群是一组写在 `(...)` 中的子模式. 例如之前说的 `{}` 是用来表示前面一个字符出现指定次数. 但如果在 `{}` 前加入特征标群则表示整个标群内的字符重复 N 次. 例如, 表达式 `(ab)*` 匹配连续出现 0 或更多个 `ab`.
捕获组是一组写在 `(...)` 中的子模式. 例如之前说的 `{}` 是用来表示前面一个字符出现指定次数. 但如果在 `{}` 前加入捕获组则表示整个标群内的字符重复 N 次. 例如, 表达式 `(ab)*` 匹配连续出现 0 或更多个 `ab`.
我们还可以在 `()` 中用或字符 `|` 表示或. 例如, `(c|g|p)ar` 匹配 `car``gar``par`.
@ -351,7 +351,7 @@
## 4. 前后关联约束(前后预查)
前置约束和后置约束都属于**非捕获**(用于匹配不在匹配列表中的格式).
前置约束和后置约束都属于**非捕获**(用于匹配不在匹配列表中的格式).
前置约束用于判断所匹配的格式是否在另一个确定的格式之后.
例如, 我们想要获得所有跟在 `$` 符号后的数字, 我们可以使用正向向后约束 `(?<=\$)[0-9\.]*`.