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 символов, но при этом курсор установит в начало строки.
Как установить курсор в конец строки?


Автор: imort (не зарегистрирован), дата: 5 июля, 2012 - 04:25
#permalink
int.toString().substr(1,2)

Автор: KorniloFF (не зарегистрирован), дата: 24 октября, 2013 - 12:11
#permalink

Правильнее будет
int.toFixed(2)
Вернет строку со значением int, округленного до 2 знака после точки.


Автор: Гость (не зарегистрирован), дата: 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')

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

ip.substring(0, ip.indexOf(':'));


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

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

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

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


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

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


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

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


Автор: Maksim Blinenkov (не зарегистрирован), дата: 12 января, 2018 - 01:47
#permalink
'192.168.38.45:8081'.split(':')[0]

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

Отправить комментарий

Приветствуются комментарии:
  • Полезные.
  • Дополняющие прочитанное.
  • Вопросы по прочитанному. Именно по прочитанному, чтобы ответ на него помог другим разобраться в предмете статьи. Другие вопросы могут быть удалены.
    Для остальных вопросов и обсуждений есть форум.
P.S. Лучшее "спасибо" - не комментарий, как все здорово, а рекомендация или ссылка на статью.
Содержание этого поля является приватным и не предназначено к показу.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Разрешены HTML-таги: <strike> <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <u> <i> <b> <pre> <img> <abbr> <blockquote> <h1> <h2> <h3> <h4> <h5> <p> <div> <span> <sub> <sup>
  • Строки и параграфы переносятся автоматически.
  • Текстовые смайлы будут заменены на графические.

Подробнее о форматировании

CAPTCHA
Антиспам
9 + 3 =
Введите результат. Например, для 1+3, введите 4.
 
Поиск по сайту
Содержание

Учебник javascript

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

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

Интерфейсы

Все об AJAX

Оптимизация

Разное

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

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