HTML Diff
1 added 1 removed
Original 2026-01-01
Modified 2026-03-10
1 <p>В<a>предыдущей статье</a>мы начали тему работы со строками в JavaScript. В этом материале вы узнаете, как выполнять поиск в строке, как работать с подстрокой, как извлекать часть строки и т. д.</p>
1 <p>В<a>предыдущей статье</a>мы начали тему работы со строками в JavaScript. В этом материале вы узнаете, как выполнять поиск в строке, как работать с подстрокой, как извлекать часть строки и т. д.</p>
2 <h3>Поиск строки в строке в JavaScript</h3>
2 <h3>Поиск строки в строке в JavaScript</h3>
3 <p>С помощью метода IndexOf() можно вернуть индекс первого вхождения заданного текста в строку:</p>
3 <p>С помощью метода IndexOf() можно вернуть индекс первого вхождения заданного текста в строку:</p>
4 var str = "Please locate where 'locate' occurs!"; var pos = str.indexOf("locate");<p>В нашем случае происходит подсчёт позиции с нуля. При этом: 1) 0 - первая позиция в строке, 2) 1 - вторая, 3) 2 - третья...</p>
4 var str = "Please locate where 'locate' occurs!"; var pos = str.indexOf("locate");<p>В нашем случае происходит подсчёт позиции с нуля. При этом: 1) 0 - первая позиция в строке, 2) 1 - вторая, 3) 2 - третья...</p>
5 - <p>Идём дальше. Функция LastIndexOf() в JavaScript вернёт индекс последнего вхождения:</p>
5 + <p>Идём дальше. Функци LastIndexOf() в JavaScript вернёт индекс последнего вхождения:</p>
6 var str = "Please locate where 'locate' occurs!"; var pos = str.lastIndexOf("locate");<p>Оба этих метода принимают 2-й параметр в виде начальной позиции для поиска:</p>
6 var str = "Please locate where 'locate' occurs!"; var pos = str.lastIndexOf("locate");<p>Оба этих метода принимают 2-й параметр в виде начальной позиции для поиска:</p>
7 var str = "Please locate where 'locate' occurs!"; var pos = str.indexOf("locate",15);<p>Стоит упомянуть и функцию Search() - она выполняет поиск строки для заданного значения, возвращая позицию совпадения:</p>
7 var str = "Please locate where 'locate' occurs!"; var pos = str.indexOf("locate",15);<p>Стоит упомянуть и функцию Search() - она выполняет поиск строки для заданного значения, возвращая позицию совпадения:</p>
8 var str = "Please locate where 'locate' occurs!"; var pos = str.search("locate");<h2>Метод slice () в JavaScript</h2>
8 var str = "Please locate where 'locate' occurs!"; var pos = str.search("locate");<h2>Метод slice () в JavaScript</h2>
9 <p>Функция slice() извлечёт часть строки и вернёт извлечённую часть в новой строке. Метод способен принимать два параметра: начальный индекс (это положение) и конечный индекс (речь идёт о позиции).</p>
9 <p>Функция slice() извлечёт часть строки и вернёт извлечённую часть в новой строке. Метод способен принимать два параметра: начальный индекс (это положение) и конечный индекс (речь идёт о позиции).</p>
10 <p>К примеру, давайте нарежем часть строки из позиции 7 в положение 13:</p>
10 <p>К примеру, давайте нарежем часть строки из позиции 7 в положение 13:</p>
11 var str = "Apple, Banana, Kiwi"; var res = str.slice(7, 13);<p>В нашем случае результатом будет:</p>
11 var str = "Apple, Banana, Kiwi"; var res = str.slice(7, 13);<p>В нашем случае результатом будет:</p>
12 <p>Если параметр будет иметь отрицательное значение, то позиция будет учитываться с конца строки. Например:</p>
12 <p>Если параметр будет иметь отрицательное значение, то позиция будет учитываться с конца строки. Например:</p>
13 var str = "Apple, Banana, Kiwi"; var res = str.slice(-12, -6);<p>Результат будет тот же.</p>
13 var str = "Apple, Banana, Kiwi"; var res = str.slice(-12, -6);<p>Результат будет тот же.</p>
14 <p>Кстати, если 2-й параметр опустить, то метод сделает срез оставшейся части строки:</p>
14 <p>Кстати, если 2-й параметр опустить, то метод сделает срез оставшейся части строки:</p>
15 <p>Результатом будет:</p>
15 <p>Результатом будет:</p>
16 <p>То же самое получим, выполнив срез с конца:</p>
16 <p>То же самое получим, выполнив срез с конца:</p>
17 var res = str.slice(-12);<p>Остаётся лишь добавить, что отрицательные позиции не функционируют в Internet Explorer 8 и других, более ранних версиях.</p>
17 var res = str.slice(-12);<p>Остаётся лишь добавить, что отрицательные позиции не функционируют в Internet Explorer 8 и других, более ранних версиях.</p>
18 <h2>Метод подстроки в JavaScript</h2>
18 <h2>Метод подстроки в JavaScript</h2>
19 <p>Подстрока в JavaScript аналогична срезу с той разницей, что подстрока не способна принимать отрицательные индексы:</p>
19 <p>Подстрока в JavaScript аналогична срезу с той разницей, что подстрока не способна принимать отрицательные индексы:</p>
20 var str = "Apple, Banana, Kiwi"; var res = str.substring(7, 13);<p>В качестве результата опять получим "Banana".</p>
20 var str = "Apple, Banana, Kiwi"; var res = str.substring(7, 13);<p>В качестве результата опять получим "Banana".</p>
21 <p>Если же мы опустим 2-й параметр, то подстрока разрежет оставшуюся часть строки.</p>
21 <p>Если же мы опустим 2-й параметр, то подстрока разрежет оставшуюся часть строки.</p>
22 <h2>Метод substr () в JavaScript</h2>
22 <h2>Метод substr () в JavaScript</h2>
23 <p>Строковый метод substr() похож на slice() с той разницей, что 2-й параметр показывает длину извлечённой детали.</p>
23 <p>Строковый метод substr() похож на slice() с той разницей, что 2-й параметр показывает длину извлечённой детали.</p>
24 var str = "Apple, Banana, Kiwi"; var res = str.substr(7, 6);<p>Результат: Banana.</p>
24 var str = "Apple, Banana, Kiwi"; var res = str.substr(7, 6);<p>Результат: Banana.</p>
25 <p>Мы можем опустить 2-й параметр - тогда строковый метод substr() разрежет оставшуюся часть строки.</p>
25 <p>Мы можем опустить 2-й параметр - тогда строковый метод substr() разрежет оставшуюся часть строки.</p>
26 var str = "Apple, Banana, Kiwi"; var res = str.substr(7);<p>Получим: Banana, Kiwi.</p>
26 var str = "Apple, Banana, Kiwi"; var res = str.substr(7);<p>Получим: Banana, Kiwi.</p>
27 <p>Если 1-й параметр будет отрицательным, позиция будет рассчитываться с конца строки.</p>
27 <p>Если 1-й параметр будет отрицательным, позиция будет рассчитываться с конца строки.</p>
28 var str = "Apple, Banana, Kiwi"; var res = str.substr(-4);<p>Результат: Kiwi.</p>
28 var str = "Apple, Banana, Kiwi"; var res = str.substr(-4);<p>Результат: Kiwi.</p>
29 <h2>Меняем содержимое строки в JavaScript</h2>
29 <h2>Меняем содержимое строки в JavaScript</h2>
30 <p>Строковый метод Replace() позволит заменить указанное значение иным значением в строке:</p>
30 <p>Строковый метод Replace() позволит заменить указанное значение иным значением в строке:</p>
31 str = "Please visit Microsoft!"; var n = str.replace("Microsoft", "W3Schools");<p>Результат: Please visit W3Schools!</p>
31 str = "Please visit Microsoft!"; var n = str.replace("Microsoft", "W3Schools");<p>Результат: Please visit W3Schools!</p>
32 <p>Обратите внимание, что метод Replace() не изменит строку, в которой вызывается, а возвратит новую.</p>
32 <p>Обратите внимание, что метод Replace() не изменит строку, в которой вызывается, а возвратит новую.</p>
33 <p>В следующем примере функция Replace() меняет лишь первое совпадение:</p>
33 <p>В следующем примере функция Replace() меняет лишь первое совпадение:</p>
34 str = "Please visit Microsoft and Microsoft!"; var n = str.replace("Microsoft", "W3Schools");<p>Итог: Please visit W3Schools and Microsoft!</p>
34 str = "Please visit Microsoft and Microsoft!"; var n = str.replace("Microsoft", "W3Schools");<p>Итог: Please visit W3Schools and Microsoft!</p>
35 <p>Кстати, по умолчанию Replace() учитывает регистр. Написав MICROSOFT, мы увидим, что функция работать не будет: Пример</p>
35 <p>Кстати, по умолчанию Replace() учитывает регистр. Написав MICROSOFT, мы увидим, что функция работать не будет: Пример</p>
36 str = "Please visit Microsoft!"; var n = str.replace("MICROSOFT", "W3Schools");<p>Но мы можем заменить регистр без его учёта, если воспользуемся регулярным выражением с пометкой " i ":</p>
36 str = "Please visit Microsoft!"; var n = str.replace("MICROSOFT", "W3Schools");<p>Но мы можем заменить регистр без его учёта, если воспользуемся регулярным выражением с пометкой " i ":</p>
37 str = "Please visit Microsoft!"; var n = str.replace(/MICROSOFT/i, "W3Schools");<p>Результат: Please visit W3Schools!</p>
37 str = "Please visit Microsoft!"; var n = str.replace(/MICROSOFT/i, "W3Schools");<p>Результат: Please visit W3Schools!</p>
38 <p>Здесь стоит заметить, что регулярные выражения надо писать без кавычек.</p>
38 <p>Здесь стоит заметить, что регулярные выражения надо писать без кавычек.</p>
39 <p>Если желаете заменить все совпадения, воспользуйтесь регулярным выражением с флагом /g:</p>
39 <p>Если желаете заменить все совпадения, воспользуйтесь регулярным выражением с флагом /g:</p>
40 str = "Please visit Microsoft and Microsoft!"; var n = str.replace(/Microsoft/g, "W3Schools");<p>Тут получим следующее: Please visit W3Schools and W3Schools!</p>
40 str = "Please visit Microsoft and Microsoft!"; var n = str.replace(/Microsoft/g, "W3Schools");<p>Тут получим следующее: Please visit W3Schools and W3Schools!</p>
41 <h2>Извлекаем строковые символы в JavaScript</h2>
41 <h2>Извлекаем строковые символы в JavaScript</h2>
42 <p>Есть 2 безопасных строковых функции для извлечения строковых символов: • charCodeAt (позиция); • charAt (позиция).</p>
42 <p>Есть 2 безопасных строковых функции для извлечения строковых символов: • charCodeAt (позиция); • charAt (позиция).</p>
43 <p>Функция charAt() возвратит символ по указанному нами индексу (позиции) в строке:</p>
43 <p>Функция charAt() возвратит символ по указанному нами индексу (позиции) в строке:</p>
44 var str = "HELLO WORLD"; str.charAt(0);<p>Вывод:</p>
44 var str = "HELLO WORLD"; str.charAt(0);<p>Вывод:</p>
45 <p>Что касается метода charCodeAt(), то он вернёт Юникод символа по указанному нами индексу:</p>
45 <p>Что касается метода charCodeAt(), то он вернёт Юникод символа по указанному нами индексу:</p>
46 var str = "HELLO WORLD"; str.charCodeAt(0); // вернёт 72<p>Что ж, на этом всё, удачного вам кодинга!</p>
46 var str = "HELLO WORLD"; str.charCodeAt(0); // вернёт 72<p>Что ж, на этом всё, удачного вам кодинга!</p>
47 <p><a>Источник</a></p>
47 <p><a>Источник</a></p>
48 <p><em>Интересует профессиональный курс по JavaScript-разработке? Переходите по ссылке ниже:</em></p>
48 <p><em>Интересует профессиональный курс по JavaScript-разработке? Переходите по ссылке ниже:</em></p>
49  
49