В яваскрипте есть две функции, которые обрезают строку: substring(int start, int stop) и substr(int start, int length). В качестве примера будет взята строка: «Привет веселый мир!»
Таблица индексов и номеров
Строка в яваскрипте является массивом, так что фактический номер символа, отличается от индекса массива на единицу. Чтобы стало понятно ниже приведена таблица символов и индексов строки.
substr()
Синтаксис substr(int start, int length).
int start — обязательное значение, индекс начала обрезания строки (можно передать отрицательное значение).
int length — необязательное поле, количество символов, которые будут обрезаны от начала параметра start. Если этот параметр опущен, то строка будет обрезана до конца от начала start.
Пример
// Определяем строку
var str = 'Привет веселый мир!';
document.write(str.substr(4)); // ет веселый мир!
document.write(str.substr(-5)); // мир!
document.write(str.substr(2, 7)); // ивет ве
document.write(str.substr(-5, 2)); // мир!
document.write(str.substr(-9, 3)); // елы
substring()
Синтаксис substring(int start, int stop).
int start — обязательное значение, индекс начала обрезания строки.
int stop — необязательное поле, номер символа, на котором закончится обрезка строки. Если этот параметр опущен, то строка будет обрезана до конца от начала start.
Пример
// Определяем строку
var str = 'Привет веселый мир!';
document.write(str.substring(4)); // ет веселый мир!
document.write(str.substring(2,5)); // иве
document.write(str.substring(5,2)); // иве
document.write(str.substring(-5, 2)); // Пр
document.write(str.substring(4, -4)); // Прив
На заметку
Если в функцию substring() передать отрицательные значения (в любой из параметров), он будет восприниматься как ноль.
Если в функции substring() stop > start, то параметры поменяются местами.