Javascript.RU

substr

Синтаксис

var sub = string.substr(start[, length])

Аргументы

start
начальная позиция, начиная от 0
length
сколько символов брать с позиции start

Описание, примеры

Этот метод описан только в ненормативной части стандарта ECMA, но реализован во всех браузерах.

Метод substr начинает собирать строку с позиции start и заканчивает, когда соберет length или дойдет до конца строки.

Если start больше или равен длине строки, то substr возвращает пустую строку.

Если start < 0, позиция определяется с конца строки. При этом если полученная позиция - до начала строки, то в качестве start берется 0. Это поведение не поддерживается Internet Explorer.

Если параметр length не указан - подстрока берется до конца строки.

Если length <= 0 - возвращается пустая строка.

var str = "abcdefghij";
alert("(1,2): "    + str.substr(1,2));
alert("(-3,2): "   + str.substr(-3,2));
alert("(-3): "     + str.substr(-3));
alert("(1): "      + str.substr(1));
alert("(-20, 2): " + str.substr(-20,2));
alert("(20, 2): "  + str.substr(20,2));

Последовательно выведет:

(1,2): bc
(-3,2): hi
(-3): hij
(1): bcdefghij
(-20, 2): ab
(20, 2):

См. также


Автор: Гость (не зарегистрирован), дата: 9 февраля, 2011 - 00:53
#permalink

Большое спасибо!
Коротко и с адекватно-нормальными примерами - успехов Вам!
Продолжайте писать!


Автор: demix, дата: 8 июля, 2011 - 12:43
#permalink

Так как использую именно эту функцию, то решил спросить тут.
В поле textarea установлен ограничитель на 2000 символов максимум.

var control = 2000;
   if(res > 2000)
      text.value=content.substr(0,control);

Теперь если в поле добавить больше, чем 2000 символов, то функция возвратит строку ровно 2000 символов, но при этом курсор установит в начало строки.
Как установить курсор в конец строки?


Автор: Гость (не зарегистрирован), дата: 25 декабря, 2012 - 17:18
#permalink

а как сделать чтобы из этого 192.168.38.45:8081 отрезать :8081, при условии что IP адрес динамический его длинна меняется и его генерирует переменная host в программе HFS


Автор: Гость (не зарегистрирован), дата: 26 декабря, 2012 - 00:58
#permalink

Написано же что отрицательный start надо указывать, чтобы от конца отсчитывать


Автор: actor_sam (не зарегистрирован), дата: 3 мая, 2013 - 20:53
#permalink

Можно отбросить с помощью RegExp

var ip = '192.168.38.45:8081';
return ip.replace(/(\d+\.\d+\.\d+\.\d+)(\:\d\d\d\d)/,'$1')

Автор: Гость (не зарегистрирован), дата: 25 января, 2013 - 10:52
#permalink

Почему-то вариант из примера:

alert("(-3): " + str.substr(-3));

возвращает у меня всю строку
в чем может быть причина?


Автор: енот (не зарегистрирован), дата: 23 марта, 2013 - 19:35
#permalink

может быть строка короче трех символов?


Автор: paynet (не зарегистрирован), дата: 24 марта, 2013 - 17:09
#permalink

Потому что Internet Explorer не поддерживает отрицательные значения в качестве start


Автор: Гость (не зарегистрирован), дата: 21 мая, 2018 - 14:38
#permalink
var str = "DNІ0вфівфівфів";
var regRP= str.substr(-2,2);
alert(regRP)

 
Поиск по сайту
Содержание

Учебник javascript

Основные элементы языка

Сундучок с инструментами

Интерфейсы

Все об AJAX

Оптимизация

Разное

Дерево всех статей

Последние темы на форуме
Forum