<b>строка.lastlndexOf(подстрока, начало)</b>
Аргументы
подстрока Подстрока, которая должна быть найдена в строке.
начало Необязательный целый аргумент, задающий позицию в строке, с которой следует начать поиск. Допустимые значения: от 0 (позиция первого символа в строке) до
<b>строка.length-1</b>
(позиция последнего символа в строке). Если этот аргумент отсутствует, поиск начинается с последнего символа строки.
Возвращаемое значение
Позиция последнего вхождения подстроки в строку, начиная с позиции начало, если подстрока найдена, или -1, если такое вхождение не найдено.
Описание
<b>String.lastlndexOf()</b>
просматривает строку от конца к началу, чтобы увидеть, содержит ли она подстроку. Поиск выполняется с позиции начало внутри строки или с конца строки, если аргумент начало не указан. Если подстрока найдена,
<b>String.lastlndexOf()</b>
возвращает позицию первого символа этого вхождения. Метод выполняет поиск от конца к началу, поэтому первое найденное вхождение является последним в строке, расположенным до позиции начало.
Если подстрока не найдена,
<b>String.lastlndexOf()</b>
возвращает -1.
Обратите внимание: хотя метод
<b>String.lastlndexOf()</b>
ищет строку от конца к началу, он все равно нумерует позиции символов в строке с начала. Первый символ строки занимает позицию с номером 0, а последний -
<b>строка.length-1</b>
.
См. также
String.charAt(), String.indexOf(), String.substring()
String.length
длина строки
Синтаксис
<b>строка.length</b>
Описание
Свойство
<b>String.length</b>
- это доступное только для чтения целое, указывающее количество символов в строке. Для любой строки s индекс последнего символа равен
<b>s.length-1</b>
. Свойство
<b>length</b>
строки не перечисляется циклом
<b>for/in</b>
и не может быть удалено с помощью оператора
<b>delete</b>
.
String.localeCompare()
сравнивает строки с учетом порядка следования символов национальных алфавитов
Синтаксис
<b>строка.lоса1еСоmраге(целевая_строка)</b>
Аргументы
целевая_строка
Строка, сравниваемая со строкой с учетом порядка следования символов национальных алфавитов.
Возвращаемое значение
Число, обозначающее результат сравнения. Если строка «меньше» целевой_строки,
<b>localeCompare()</b>
возвращает отрицательное число. Если строка «больше» целевой_строки,метод возвращает положительное число. Если строки идентичны или неразличимы в соответствии с региональными соглашениями о сортировке, метод возвращает 0.
Описание
Когда к строкам применяются операторы
<b><</b>
и
<b>></b>
, сравнение выполняется только по кодам Юникода этих символов; порядок сортировки, принятый в текущем регионе, не учитывается. Сортировка, выполняемая подобным образом, не всегда оказывается верной. Возьмем, например, испанский язык, в котором буквы «ch» традиционно сортируются как одна буква, расположенная между буквами «с» и «d».
Метод
<b>localeCompare()</b>
служит для сравнения строк с учетом порядка сортировки, по умолчанию определяемого региональными настройками. Стандарт ECMAScript не определяет, как должно выполняться сравнение с учетом региона; в нем просто указано, что эта функция руководствуется порядком сортировки, определенным операционной системой.
Пример
Отсортировать массив строк в порядке, учитывающем региональные параметры, можно следующим образом:
<b>var strings; // Сортируемый массив строк; инициализируется в другом месте</b>
<b>strings.sort(function(a,b) { return a.localeCompare(b) });</b>
String.match()
находит одно или более соответствий регулярному выражению
Синтаксис
<b>строка.match(regexp)</b>
Аргументы
regexp Объект
<b>RegExp</b>
, задающий шаблон для поиска. Если этот аргумент не является объектом
<b>RegExp</b>
, он сначала преобразуется с помощью конструктора
<b>RegExp()</b>
.
Возвращаемое значение
Массив, содержащий результаты поиска. Содержимое массива зависит от того, установлен ли в
<b>regexp</b>
глобальный атрибут «g». Далее это возвращаемое значение описано подробно.
Описание
Метод
<b>match()</b>
ищет в строке соответствия шаблону, определяемому выражением
regexp. Поведение этого метода существенно зависит от того, установлен атрибут «g» в
regexp или нет (регулярные выражения подробно рассмотрены в главе 10).
Если в regexp нет атрибута «g»,
<b>match()</b>
ищет одно соответствие в строке. Если соответствие не найдено,
<b>match()</b>
возвращает null. В противном случае метод возвращает массив, содержащий информацию о найденном соответствии. Элемент массива с индексом 0 содержит найденный текст. Оставшиеся элементы содержат текст, соответствующий всем подвыражениям внутри регулярного выражения. В дополнение к этим обычным элементам массива возвращаемый массив имеет еще два объектных свойства. Свойство
<b>index</b>
массива указывает позицию начала найденного текста внутри строки. Кроме того, свойство
<b>input</b>
возвращаемого массива содержит ссылку на саму строку. Если в
regexp установлен флаг «g»,
<b>match()</b>
выполняет глобальный поиск, находя в строке все соответствующие подстроки. Метод возвращает null, если соответствие не найдено, или массив, если найдено одно и более соответствий. Однако содержимое полученного массива при глобальном поиске существенно отличается. В этом случае элементы массива содержат все подстроки, найденные в строке, а сам массив не имеет свойств
<b>index</b>
и
<b>input</b>
. Обратите внимание: для глобального поиска
<b>match()</b>
не предоставляет информации о подвыражениях в скобках и не указывает, в каком месте строки было найдено каждое из соответствий. Эту информацию для глобального поиска можно получить методом
<b>RegExp.ехес().</b>