From 60ac106ede7a12f9d2431ddb434083f6831a7ee5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?M=C2=A1ke?= <77801554+front42@users.noreply.github.com> Date: Wed, 18 Mar 2026 00:59:48 +0300 Subject: [PATCH] feat: edit regexp-character-classes article.md ru --- .../02-regexp-character-classes/article.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/9-regular-expressions/02-regexp-character-classes/article.md b/9-regular-expressions/02-regexp-character-classes/article.md index bb6f0d2bb9..cfc53e9327 100644 --- a/9-regular-expressions/02-regexp-character-classes/article.md +++ b/9-regular-expressions/02-regexp-character-classes/article.md @@ -2,7 +2,7 @@ Рассмотрим практическую задачу - у нас есть номер телефона вида `"+7(903)-123-45-67"`, и нам нужно превратить его в строку только из чисел: `79031234567`. -Для этого мы можем найти и удалить все, что не является числом. С этим нам помогут символьные классы. +Для этого мы можем найти и удалить всё, что не является числом. С этим нам помогут символьные классы. *Символьный класс* - это специальное обозначение, которое соответствует любому символу из определённого набора. @@ -44,7 +44,7 @@ alert( str.match(regexp).join('') ); // 79031234567 : Пробельные символы: включает в себя символ пробела, табуляции `\t`, перевода строки `\n` и некоторые другие редкие пробельные символы, обозначаемые как `\v`, `\f` и `\r`. `pattern:\w` ("w": от английского "word" – "слово") -: Символ "слова", а точнее – буква латинского алфавита или цифра или подчёркивание `_`. Нелатинские буквы не являются частью класса `pattern:\w`, то есть буква русского алфавита не подходит. +: Символ "слова", а точнее – буква латинского алфавита, цифра или подчёркивание `_`. Нелатинские буквы не являются частью класса `pattern:\w`, то есть буква русского алфавита не подходит. Для примера, `pattern:\d\s\w` обозначает "цифру", за которой идёт пробельный символ, а затем символ слова, например `match:1 a`. @@ -82,7 +82,7 @@ alert( "I love HTML5!".match(/\s\w\w\w\w\d/) ); // ' HTML5' : Не пробел: любой символ, кроме `pattern:\s`, например буква. `pattern:\W` -: Любой символ, кроме `pattern:\w`, то есть не буквы из латиницы, не знак подчёркивания и не цифра. В частности, русские буквы принадлежат этому классу. +: Любой символ, кроме `pattern:\w`, то есть не буква из латиницы, не знак подчёркивания и не цифра. В частности, русские буквы принадлежат этому классу. Мы уже видели, как сделать чисто цифровой номер из строки вида `subject:+7(903)-123-45-67`: найти все цифры и соединить их. @@ -124,14 +124,14 @@ alert( "CS 4".match(regexp) ); // CS 4 (пробел тоже является Обратите внимание, что точка означает "любой символ", но не "отсутствие символа". Там должен быть какой-либо символ, чтобы соответствовать условию поиска: ```js run -alert( "CS4".match(/CS.4/) ); // null, нет совпадений потому что нет символа для точки +alert( "CS4".match(/CS.4/) ); // null, нет совпадений, потому что нет символа для точки ``` ### Точка как буквально любой символ, с флагом "s" Обычно точка не соответствует символу новой строки `\n`. -То есть, регулярное выражение `pattern:A.B` будет искать символ `match:A` и затем `match:B`, с любым символом между ними, кроме перевода строки `\n`: +То есть регулярное выражение `pattern:A.B` будет искать символ `match:A` и затем `match:B`, с любым символом между ними, кроме перевода строки `\n`: ```js run alert( "A\nB".match(/A.B/) ); // null (нет совпадения) @@ -166,7 +166,7 @@ alert( "1 - 5".match(/\d\s-\s\d/) ); // 1 - 5, тоже работает **Пробел - это символ. Такой же важный, как любой другой.** -Нельзя просто добавить или удалить пробелы из регулярного выражения, и ожидать, что оно будет также работать. +Нельзя просто добавить или удалить пробелы из регулярного выражения, и ожидать, что оно будет работать так же. Другими словами, в регулярном выражении все символы имеют значение, даже пробелы. ```` @@ -179,7 +179,7 @@ alert( "1 - 5".match(/\d\s-\s\d/) ); // 1 - 5, тоже работает - `pattern:\D` -- не цифры. - `pattern:\s` -- пробельные символы, табы, новые строки. - `pattern:\S` -- все, кроме `pattern:\s`. -- `pattern:\w` -- латиница, цифры, подчёркивание `'_'`. +- `pattern:\w` -- латиница, цифры, подчёркивание `_`. - `pattern:\W` -- все, кроме `pattern:\w`. - `pattern:.` -- любой символ, если с флагом регулярного выражения `pattern:s`, в противном случае любой символ, кроме перевода строки `\n`.