Чтение онлайн

на главную - закладки

Жанры

JavaScript. Подробное руководство, 6-е издание
Шрифт:

Возвращаемое значение

Позиция начала первой подстроки в строке, соответствующей выражению regexp или -1, если соответствие не найдено.

Описание

Метод

search
ищет подстроку в строке, соответствующую регулярному выражению regexp, и возвращает позицию первого символа найденной подстроки или -1, если соответствие не найдено.

Метод не выполняет глобального поиска, игнорируя флаг «g». Он также игнорирует свойство

regexp.lastlndex
и всегда выполняет поиск с начала строки, следовательно, всегда возвращает позицию первого соответствия, найденного в строке.

Пример

var s = "JavaScript is fun";

s.search(/script/i) // Вернет 4

s.search(/a(.)a/) // Вернет 1

См. также

RegExp, RegExp.exec, RegExp.test, String.match, String. replace; глава 10

String.slice

извлечение подстроки

Синтаксис

строка.siice(начало, конец)

Аргументы

начало Индекс в строке, с которого должен начинаться фрагмент. Если этот аргумент отрицателен, он обозначает позицию, измеряемую от конца строки. То есть -1 соответствует последнему символу, -2 - второму с конца и т. д.

конец Индекс символа исходной строки непосредственно после конца извлекаемого фрагмента. Если он не указан, фрагмент включает все символы от позиции начало до конца строки. Если этот аргумент отрицателен, он обозначает позицию, отсчитываемую от конца строки.

Возвращаемое значение

Новая строка, которая содержит все символы строки, начиная с символа в позиции начало (и включая его) и заканчивая символом в позиции конец (но не включая его).

Описание

Метод

slice
возвращает строку, содержащую фрагмент, или подстроку строки, но не изменяет строку.

Методы

slice, substring
и признанный устаревшим метод
substr
объекта
String
возвращают части строки. Метод
siice
более гибок, чем
substring,
поскольку допускает отрицательные значения аргументов. Метод
slice
отличается от
substr
тем, что задает подстроку с помощью двух символьных позиций, a
substr
использует одно значение позиции и длину. Кроме того,
String.slice
является аналогом
Array.slice.

Пример

var s = "abcdefg";

s.slice(0,4) // Вернет "abed"

s.slice(2,4) // Вернет "cd"

s.slice(4) // Вернет "efg"

s.slice(3,-1) //Вернет "def"

s.slice(3,-2) //Вернет "de"

s.slice(-3,-1) // Должен вернуть "ef"; в IE 4 возвращает "abedef"

Ошибки

Отрицательные значения в аргументе начало не работают в Internet Explorer 4 (в более поздних версиях Internet Explorer эта ошибка исправлена). Они обозначают не символьную позицию, отсчитываемую от конца строки, а позицию 0.

См. также

Array. slice, String, substring

String.split

разбивает строку на массив строк

Синтаксис

строка.split(разделитель, лимит)

Аргументы

разделитель Строка или регулярное выражение, по которому разбивается строка,

лимит Необязательное целое, определяющее максимальную длину полученного массива. Если этот аргумент указан, то количество возвращенных подстрок не будет превышать указанное. Если он не указан, разбивается вся строка независимо от ее длины.

Возвращаемое значение

Массив строк, создаваемый путем разбиения строки на подстроки по границам, заданным разделителем. Подстроки в возвращаемом массиве не включают сам разделитель, кроме описываемого далее случая.

Описание

Метод

split
создает и возвращает массив подстрок указанной строки, причем размер возвращаемого массива не превышает указанный лимит. Эти подстроки создаются путем поиска текста, соответствующего разделителю, в строке от начала до конца и разбиения строки до и после найденного текста. Ограничивающий текст не включается ни в одну из возвращаемых строк, кроме случая, описываемого далее. Следует отметить, что, если разделитель соответствует началу строки, первый элемент возвращаемого массива будет пустой строкой - текстом, присутствующим перед разделителем. Аналогично, если разделитель соответствует концу строки, последний элемент массива (если это не противоречит значению аргумента лимит) будет пустой строкой.

Если разделитель не указан, строка вообще не разбивается и возвращаемый массив содержит только один строковый элемент, представляющий собой строку целиком. Если разделитель представляет собой пустую строку или регулярное выражение, соответствующее пустой строке, то строка разбивается между каждыми двумя соседними символами, а возвращаемый массив имеет ту же длину, что и исходная строка, если не указан меньший лимит. (Это особый случай, поскольку пустая строка перед первым и за последним символами отсутствует.)

Ранее отмечалось, что подстроки в массиве, возвращаемом описываемым методом, не содержат текст разделителя, использованного для разбиения строки. Однако если разделитель - это регулярное выражение, содержащее подвыражения в скобках, то подстроки, соответствующие этим подвыражениям (но не текст, соответствующий регулярному выражению в целом), включаются в возвращаемый массив.

Метод

String.split
является обратным методу
Array.join.

Поделиться:
Популярные книги

Протокол "Наследник"

Лисина Александра
1. Гибрид
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Протокол Наследник

Черный Маг Императора 19

Герда Александр
19. Черный маг императора
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Черный Маг Императора 19

Тринадцатый VIII

NikL
8. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Тринадцатый VIII

Дважды одаренный. Том VIII

Тарс Элиан
8. Дважды одаренный
Фантастика:
боевая фантастика
альтернативная история
аниме
попаданцы
5.00
рейтинг книги
Дважды одаренный. Том VIII

За Горизонтом

Вайс Александр
8. Фронтир
Фантастика:
боевая фантастика
космическая фантастика
космоопера
5.00
рейтинг книги
За Горизонтом

Адвокат Империи 16

Карелин Сергей Витальевич
16. Адвокат империи
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Адвокат Империи 16

Путь к бессмертию 2

Покинтелица Евгений
2. Девятихвостый Богатырь
Фантастика:
попаданцы
сказочная фантастика
фэнтези
5.00
рейтинг книги
Путь к бессмертию 2

Элизиум. Аликс и монеты

Андерсон Александр
1. Элизиум
Фантастика:
фэнтези
сказочная фантастика
8.98
рейтинг книги
Элизиум. Аликс и монеты

Тринадцатый

NikL
1. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
6.80
рейтинг книги
Тринадцатый

Черный маг императора

Герда Александр
1. Черный маг императора
Фантастика:
юмористическая фантастика
попаданцы
аниме
5.00
рейтинг книги
Черный маг императора

Натиск

Осадчук Алексей Витальевич
12. Последняя жизнь
Фантастика:
аниме
фэнтези
попаданцы
6.20
рейтинг книги
Натиск

На границе империй. Том 10. Часть 1

INDIGO
Вселенная EVE Online
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 10. Часть 1

Избрание сочинения в трех томах. Том второй

Кочетов Всеволод Анисимович
Проза:
советская классическая проза
5.00
рейтинг книги
Избрание сочинения в трех томах. Том второй

Отряд

Валериев Игорь
5. Ермак
Фантастика:
альтернативная история
5.25
рейтинг книги
Отряд