From 3af52c4e53ffd82cc90f386f47a7b6cc4ee5f689 Mon Sep 17 00:00:00 2001 From: Daria Bromot <80320446+bromotdi@users.noreply.github.com> Date: Sun, 14 May 2023 18:39:46 +0300 Subject: [PATCH 1/3] feat: translate en to uk --- .../05-regexp-multiline-mode/article.md | 94 +++++++++---------- 1 file changed, 47 insertions(+), 47 deletions(-) diff --git a/9-regular-expressions/05-regexp-multiline-mode/article.md b/9-regular-expressions/05-regexp-multiline-mode/article.md index 82f4d781d..6d99e467d 100644 --- a/9-regular-expressions/05-regexp-multiline-mode/article.md +++ b/9-regular-expressions/05-regexp-multiline-mode/article.md @@ -1,87 +1,87 @@ -# Multiline mode of anchors ^ $, flag "m" +# Багаторядковий режим якорів ^ $, прапора "m" -The multiline mode is enabled by the flag `pattern:m`. +Багаторядковий режим включається прапором `pattern:m`. -It only affects the behavior of `pattern:^` and `pattern:$`. +Він впливає лише на поведінку `pattern:^` та `pattern:$`. -In the multiline mode they match not only at the beginning and the end of the string, but also at start/end of line. +У багаторядковому режимі вони збігаються не тільки на початку та в кінці тексту, а й на початку/кінці кожного рядка у тексті. -## Searching at line start ^ +## Пошук на початку рядка ^ -In the example below the text has multiple lines. The pattern `pattern:/^\d/gm` takes a digit from the beginning of each line: +У прикладі нижче текст складається з кількох рядків. Шаблон `pattern:/^\d/gm` бере цифру з початку кожного рядка: -```js run -let str = `1st place: Winnie -2nd place: Piglet -3rd place: Eeyore`; +``js run +let str = `1 місце: Вінні-Пух +2 місце: Паць +3 місце: Слонопотам`; *!* console.log( str.match(/^\d/gm) ); // 1, 2, 3 */!* -``` +```` -Without the flag `pattern:m` only the first digit is matched: +Без прапора `pattern:m` було б знайдено лише перше число: -```js run -let str = `1st place: Winnie -2nd place: Piglet -3rd place: Eeyore`; +``js run +let str = `1 місце: Вінні +2 місце: Паць +3 місце: Слонопотам; *!* console.log( str.match(/^\d/g) ); // 1 */!* -``` +```` -That's because by default a caret `pattern:^` only matches at the beginning of the text, and in the multiline mode -- at the start of any line. +Це тому, що за замовчуванням каретка `pattern:^` збігається лише на початку тексту, а в багаторядковому режимі -- на початку будь-якого рядка. -```smart -"Start of a line" formally means "immediately after a line break": the test `pattern:^` in multiline mode matches at all positions preceded by a newline character `\n`. +``smart +"Початок рядка" формально означає "відразу після розриву рядка": тестовий `pattern:^` у багаторядковому режимі збігається в усіх позиціях, яким передує символ нового рядка `\n`. -And at the text start. -``` +І на початку тексту. +```` -## Searching at line end $ +## Пошук у кінці рядка $ -The dollar sign `pattern:$` behaves similarly. +Символ долара `pattern:$` поводиться аналогічно. -The regular expression `pattern:\d$` finds the last digit in every line +Регулярний вираз `pattern:\d$` шукає останню цифру у кожному рядку -```js run -let str = `Winnie: 1 -Piglet: 2 -Eeyore: 3`; +``js run +let str = `Вінні: 1 +Паць: 2 +Слонопотам: 3`; console.log( str.match(/\d$/gm) ); // 1,2,3 -``` +```` -Without the flag `pattern:m`, the dollar `pattern:$` would only match the end of the whole text, so only the very last digit would be found. +Без прапора `pattern:m` якір `pattern:$` відповідатиме лише кінці всього тексту, тому буде знайдено лише останню цифру. ```smart -"End of a line" formally means "immediately before a line break": the test `pattern:$` in multiline mode matches at all positions succeeded by a newline character `\n`. +"Кінець рядка" формально означає "безпосередньо перед розривом рядка": тестовий `pattern:$` у багаторядковому режимі збігається в усіх позиціях після символу нового рядка `\n`. -And at the text end. +І в кінці тексту. ``` -## Searching for \n instead of ^ $ +## Шукаємо \n замість ^ $ -To find a newline, we can use not only anchors `pattern:^` and `pattern:$`, but also the newline character `\n`. +Щоб знайти кінець рядка, можна використовувати як якоря `pattern:^` і `pattern:$`, а й символ перекладу рядка `\n`. -What's the difference? Let's see an example. +В чому різниця? Подивімось на приклад. -Here we search for `pattern:\d\n` instead of `pattern:\d$`: +Тут ми шукаємо `pattern:\d\n` замість `pattern:\d$`: -```js run -let str = `Winnie: 1 -Piglet: 2 -Eeyore: 3`; +``js run +let str = `Вінні: 1 +Паць: 2 +Слонопотам: 3`; -console.log( str.match(/\d\n/g) ); // 1\n,2\n -``` +console.log(str.match(/\d\n/g)); // 1\n,2\n +```` -As we can see, there are 2 matches instead of 3. +Як бачимо, 2 збіги замість 3-х. -That's because there's no newline after `subject:3` (there's text end though, so it matches `pattern:$`). +Це тому, що після `subject:3` немає нового рядка (хоча є кінець тексту, тому він відповідає `pattern:$`). -Another difference: now every match includes a newline character `match:\n`. Unlike the anchors `pattern:^` `pattern:$`, that only test the condition (start/end of a line), `\n` is a character, so it becomes a part of the result. +Ще одна відмінність: тепер кожен збіг містить символ нового рядка `match:\n`. На відміну від якорів `pattern:^` `pattern:$`, які лише перевіряють умову (початок/кінець рядка), `\n` є символом, тому він стає частиною результату. -So, a `\n` in the pattern is used when we need newline characters in the result, while anchors are used to find something at the beginning/end of a line. +Отже, `\n` у шаблоні використовується, коли нам потрібні символи нового рядка в результаті, тоді як якорі використовуються, щоб знайти щось на початку/кінці рядка. From 99b7fb818bdbdda89e6bb7a1363d1e6cb02fab1f Mon Sep 17 00:00:00 2001 From: Daria Bromot <80320446+bromotdi@users.noreply.github.com> Date: Sun, 14 May 2023 18:59:48 +0300 Subject: [PATCH 2/3] fix: add ` --- .../05-regexp-multiline-mode/article.md | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/9-regular-expressions/05-regexp-multiline-mode/article.md b/9-regular-expressions/05-regexp-multiline-mode/article.md index 6d99e467d..860c52265 100644 --- a/9-regular-expressions/05-regexp-multiline-mode/article.md +++ b/9-regular-expressions/05-regexp-multiline-mode/article.md @@ -10,7 +10,7 @@ У прикладі нижче текст складається з кількох рядків. Шаблон `pattern:/^\d/gm` бере цифру з початку кожного рядка: -``js run +```js run let str = `1 місце: Вінні-Пух 2 місце: Паць 3 місце: Слонопотам`; @@ -18,11 +18,11 @@ let str = `1 місце: Вінні-Пух *!* console.log( str.match(/^\d/gm) ); // 1, 2, 3 */!* -```` +``` Без прапора `pattern:m` було б знайдено лише перше число: -``js run +```js run let str = `1 місце: Вінні 2 місце: Паць 3 місце: Слонопотам; @@ -30,15 +30,15 @@ let str = `1 місце: Вінні *!* console.log( str.match(/^\d/g) ); // 1 */!* -```` +``` -Це тому, що за замовчуванням каретка `pattern:^` збігається лише на початку тексту, а в багаторядковому режимі -- на початку будь-якого рядка. +Це тому, що за замовчуванням карет `pattern:^` збігається лише на початку тексту, а в багаторядковому режимі -- на початку будь-якого рядка. -``smart +```smart "Початок рядка" формально означає "відразу після розриву рядка": тестовий `pattern:^` у багаторядковому режимі збігається в усіх позиціях, яким передує символ нового рядка `\n`. І на початку тексту. -```` +``` ## Пошук у кінці рядка $ @@ -46,13 +46,13 @@ console.log( str.match(/^\d/g) ); // 1 Регулярний вираз `pattern:\d$` шукає останню цифру у кожному рядку -``js run +```js run let str = `Вінні: 1 Паць: 2 Слонопотам: 3`; console.log( str.match(/\d$/gm) ); // 1,2,3 -```` +``` Без прапора `pattern:m` якір `pattern:$` відповідатиме лише кінці всього тексту, тому буде знайдено лише останню цифру. @@ -70,13 +70,13 @@ console.log( str.match(/\d$/gm) ); // 1,2,3 Тут ми шукаємо `pattern:\d\n` замість `pattern:\d$`: -``js run +```js run let str = `Вінні: 1 Паць: 2 Слонопотам: 3`; console.log(str.match(/\d\n/g)); // 1\n,2\n -```` +``` Як бачимо, 2 збіги замість 3-х. From fc92a9f78592fb557f7464f586da719092105298 Mon Sep 17 00:00:00 2001 From: Daria Bromot <80320446+bromotdi@users.noreply.github.com> Date: Sun, 14 May 2023 19:28:17 +0300 Subject: [PATCH 3/3] fix: edit line 23, 67, 83 --- .../05-regexp-multiline-mode/article.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/9-regular-expressions/05-regexp-multiline-mode/article.md b/9-regular-expressions/05-regexp-multiline-mode/article.md index 860c52265..e251a04fa 100644 --- a/9-regular-expressions/05-regexp-multiline-mode/article.md +++ b/9-regular-expressions/05-regexp-multiline-mode/article.md @@ -1,8 +1,8 @@ # Багаторядковий режим якорів ^ $, прапора "m" -Багаторядковий режим включається прапором `pattern:m`. +Багаторядковий режим вмикається прапором `pattern:m`. -Він впливає лише на поведінку `pattern:^` та `pattern:$`. +Це впливає лише на поведінку `pattern:^` і `pattern:$`. У багаторядковому режимі вони збігаються не тільки на початку та в кінці тексту, а й на початку/кінці кожного рядка у тексті. @@ -20,7 +20,7 @@ console.log( str.match(/^\d/gm) ); // 1, 2, 3 */!* ``` -Без прапора `pattern:m` було б знайдено лише перше число: +Без прапора `pattern:m` збігається лише перша цифра: ```js run let str = `1 місце: Вінні @@ -54,7 +54,7 @@ let str = `Вінні: 1 console.log( str.match(/\d$/gm) ); // 1,2,3 ``` -Без прапора `pattern:m` якір `pattern:$` відповідатиме лише кінці всього тексту, тому буде знайдено лише останню цифру. +Без прапора `pattern:m`, символ долара `pattern:$` відповідатиме лише кінці всього тексту, тому буде знайдено лише останню цифру. ```smart "Кінець рядка" формально означає "безпосередньо перед розривом рядка": тестовий `pattern:$` у багаторядковому режимі збігається в усіх позиціях після символу нового рядка `\n`. @@ -64,9 +64,9 @@ console.log( str.match(/\d$/gm) ); // 1,2,3 ## Шукаємо \n замість ^ $ -Щоб знайти кінець рядка, можна використовувати як якоря `pattern:^` і `pattern:$`, а й символ перекладу рядка `\n`. +Щоб знайти новий рядок, ми можемо використовувати не лише якорі `pattern:^` і `pattern:$`, а й символ нового рядка `\n`. -В чому різниця? Подивімось на приклад. +У чому різниця? Подивімось на приклад. Тут ми шукаємо `pattern:\d\n` замість `pattern:\d$`: @@ -75,12 +75,12 @@ let str = `Вінні: 1 Паць: 2 Слонопотам: 3`; -console.log(str.match(/\d\n/g)); // 1\n,2\n +console.log( str.match(/\d\n/g) ); // 1\n,2\n ``` Як бачимо, 2 збіги замість 3-х. -Це тому, що після `subject:3` немає нового рядка (хоча є кінець тексту, тому він відповідає `pattern:$`). +Це тому, що після `об'єкт:3` немає нового рядка (хоча є кінець тексту, тому він відповідає `pattern:$`). Ще одна відмінність: тепер кожен збіг містить символ нового рядка `match:\n`. На відміну від якорів `pattern:^` `pattern:$`, які лише перевіряють умову (початок/кінець рядка), `\n` є символом, тому він стає частиною результату. pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy