Skip to content

Commit 4490340

Browse files
committed
feat: update translation
1 parent f7f031d commit 4490340

File tree

1 file changed

+12
-12
lines changed
  • 9-regular-expressions/12-regexp-backreferences

1 file changed

+12
-12
lines changed

9-regular-expressions/12-regexp-backreferences/article.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@
66

77
可以使用 `pattern:\N` 在模式中引用一个组,其中 `N` 是组号。
88

9-
为了弄清那为什么有帮助,让我们考虑一项任务
9+
为了弄清这有什么用,让我们考虑一个任务
1010

11-
我们需要找到带引号的字符串:单引号 `subject:'...'` 或双引号 `subject:"..."`– 应匹配两种变体
11+
我们需要找到带引号的字符串:单引号 `subject:'...'` 或双引号 `subject:"..."` —— 应匹配这两种变体
1212

1313
如何找到它们?
1414

15-
我们可以将两种引号放在方括号中`pattern:['"](.*?)['"]`,但它会找到带有混合引号的字符串,例如 `match:"...'``match:'..."`。当一种引号出现在另一种引号内,比如在字符串 `subject:"She's the one!"` 中时,便会导致不正确的匹配:
15+
我们可以将两种引号都放在方括号中`pattern:['"](.*?)['"]`,但它会找到带有混合引号的字符串,例如 `match:"...'``match:'..."`。当一种引号出现在另一种引号内,比如在字符串 `subject:"She's the one!"` 中时,便会导致不正确的匹配:
1616

1717
```js run
1818
let str = `He said: "She's the one!".`;
@@ -23,7 +23,7 @@ let regexp = /['"](.*?)['"]/g;
2323
alert( str.match(regexp) ); // "She'
2424
```
2525

26-
如我们所见,该模式找到了一个开头的引号 `match:"`,然后文本被匹配,直到另一个引号 `match:'`,该匹配结束。
26+
正如我们所看到的,该模式找到了一个开头的引号 `match:"`,然后文本被匹配,直到另一个引号 `match:'`,该匹配结束。
2727

2828
为了确保模式查找的结束引号与开始的引号完全相同,我们可以将其包装到捕获组中并对其进行反向引用:`pattern:(['"])(.*?)\1`
2929

@@ -41,25 +41,25 @@ alert( str.match(regexp) ); // "She's the one!"
4141

4242
现在可以了!正则表达式引擎会找到第一个引号 `pattern:(['"])` 并记住其内容。那是第一个捕获组。
4343

44-
`pattern:\1` 在模式中进一步的含义是“查找与第一(捕获)分组相同的文本”,在我们的示例中为完全相同的引号。
44+
在模式中 `pattern:\1` 表示“找到与第一组相同的文本”,在我们的示例中为完全相同的引号。
4545

46-
与此类似,`pattern:\2` 表示第二(捕获)分组的内容`pattern:\3` 第三分组,依此类推。
46+
与此类似,`pattern:\2` 表示第二组的内容`pattern:\3` —— 第三分组,依此类推。
4747

4848
```smart
49-
如果我们在组中使用 `?:`,那么我们将无法引用它。用 `(?:...)` 捕获的组被排除,引擎不会存储
49+
如果我们在捕获组中使用 `?:`,那么我们将无法引用它。用 `(?:...)` 捕获的组被排除,引擎不会记住它
5050
```
5151

52-
```warn header="不要搞混了: 在模式中用 `pattern:\1`,在替换项中用:`pattern:$1`"
53-
在替换字符串中我们使用美元符号:`pattern:$1`,而在模式中 - 使用反斜杠 `pattern:\1`
52+
```warn header="不要搞混了:在模式中用 `pattern:\1`,在替换项中用:`pattern:$1`"
53+
在替换字符串中我们使用美元符号:`pattern:$1`,而在模式中 —— 使用反斜杠 `pattern:\1`
5454
```
5555
5656
## 按命名反向引用:`\k<name>`
5757
58-
如果正则表达式中有很多括号对(注:捕获组),给它们起个名字方便引用
58+
如果一个正则表达式中有很多括号,给它们起个名字会便于引用
5959
60-
要引用命名组,我们可以使用:`pattern:\k<name>`。
60+
要引用命名的捕获组,我们可以使用:`pattern:\k<name>`。
6161
62-
在下面的示例中引号组命名为 `pattern:?<quote>`,因此反向引用为 `pattern:\k<quote>`:
62+
在下面的示例中,带引号的组被命名为 `pattern:?<quote>`,因此反向引用为 `pattern:\k<quote>`:
6363
6464
```js run
6565
let str = `He said: "She's the one!".`;

0 commit comments

Comments
 (0)