Skip to content

Commit 9f8a576

Browse files
committed
Merge branch '11-regexp-alternation' of https://github.com/NancyT33333/ru.javascript.info into 11-regexp-alternation
2 parents d674b47 + c308c63 commit 9f8a576

File tree

4 files changed

+9
-9
lines changed

4 files changed

+9
-9
lines changed

9-regular-expressions/11-regexp-alternation/01-find-programming-language/solution.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11

2-
Первая идея, которая может придти -- перечислить языки, разделив их `|`.
2+
Первая идея, которая может прийти в голову -- перечислить языки, разделив их `|`.
33

4-
Но это сработает неправильно:
4+
Но это не сработает, как надо:
55

66
```js run
77
let reg = /Java|JavaScript|PHP|C|C\+\+/g;

9-regular-expressions/11-regexp-alternation/02-find-matching-bbtags/solution.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11

22
Открывающий тег -- это `pattern:\[(b|url|quote)\]`.
33

4-
Затем, чтобы найти всё до закрывающего тега -- используем выражение `pattern:[\s\S]*?`, оно соотвествует любому символу, включая новую линию, и затем обратную ссылку на открывающий тег.
4+
Затем, чтобы найти всё до закрывающего тега -- используем выражение `pattern:[\s\S]*?`, оно соответствует любому символу, включая новую строку, и затем обратную ссылку на открывающий тег.
55

66
Полное выражение: `pattern:\[(b|url|quote)\][\s\S]*?\[/\1\]`.
77

@@ -20,4 +20,4 @@ let str = `
2020
alert( str.match(reg) ); // [b]привет![/b],[quote][url]http://ya.ru[/url][/quote]
2121
```
2222

23-
Пожалуйста, обратите внимание, что необходимо экранировать слеш `pattern:[/\1]`, потому что обычно слеш закрывает выражение.
23+
Обратите внимание, что необходимо экранировать слеш `pattern:[/\1]`, потому что обычно слеш закрывает паттерн.

9-regular-expressions/11-regexp-alternation/03-match-quoted-string/task.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,17 @@
22

33
Создайте регулярное выражение для поиска строк в двойных кавычках `subject:"..."`.
44

5-
Важно, что в строке поддерживается экранирование при помощи слеша -- в таком же виде, как в обычных строках JavaScript. Например, кавычки могут быть вставлены ввиде `subject:\"`, новая линия как `subject:\n` и сам слеш как `subject:\\`.
5+
Самое важное учесть, что в искомых строках будет использоваться экранирование с помощью слеша, точно так же, как в обычных строках JavaScript. Например, кавычки могут быть вставлены как `subject:\"`, новая строка как `subject:\n`, а сам слеш как `subject:\\`.
66

77
```js
88
let str = "Как вот \"здесь\".";
99
```
1010

11-
Здесь особо важно, что двойная кавычка после слэша `subject:\"` не оканчивает строку.
11+
Здесь особо важно, что двойная кавычка после слеша `subject:\"` не оканчивает строку.
1212

1313
Поэтому мы должны искать от одной кавычки до другой, игнорируя встречающиеся экранированные кавычки.
1414

15-
этом и состоит основная сложность задачи, которая без этого условия была бы элементарной.
15+
В этом и состоит основная сложность задачи, которая без этого условия была бы элементарной.
1616

1717
Пример совпадающих строк:
1818
```js

9-regular-expressions/11-regexp-alternation/article.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,9 @@ let str = "Сначала появился HTML, затем CSS, потом Java
1818
alert( str.match(reg) ); // 'HTML', 'CSS', 'JavaScript'
1919
```
2020

21-
Мы уже знаем похожую вещь -- квадратные скобки. Они позволяют выбирать между несколькими символами, например `pattern:gr[ae]y` найдёт `match:gray`, либо `match:grey`.
21+
Мы уже знакомы с нечто подобным -- квадратные скобки. Они позволяют выбирать между несколькими символами, например `pattern:gr[ae]y` найдёт `match:gray`, либо `match:grey`.
2222

23-
Квадратные скобки работают только с символами или последовательностями символов. Альтернация работает с любыми выражениями. Регэксп `pattern:A|B|C` обозначает поиск одного из выражений: `A`, `B` или `C`.
23+
Квадратные скобки работают только с символами или последовательностями символов. Альтернация работает с любыми выражениями. Регулярное выражение `pattern:A|B|C` обозначает поиск одного из выражений: `A`, `B` или `C`.
2424

2525
Например:
2626

0 commit comments

Comments
 (0)