Метод split возвращает новый массив.
Строка бьется по separator, при разбивании separator пропадает:
arr = "a,b,c".split(',') // массив ["a", "b", "c"]
Если separator не указан или совпадений нет, то возвращаемый массив состоит из одного элемента - исходной строки.
Если separator является регулярным выражением со вложенными скобками, то каждый раз при совпадении separator все результаты захвата скобками, включая undefined результаты, добавляются в выходной массив.
Если вызывающая строка пуста, то split возвращает массив из одной пустой строки, а не пустой массив.
Следующий пример делит по ',' и убирает лишние пробелы вокруг запятой.
Пример: по регулярному выражению
var tags = "Лето, зима, осень 2009 года"
var re = /\s*,\s*/
var tagList = tags.split(re);
alert(tagList) // ["Лето", "зима", "осень 2009 года"]
При делении с ограничением limit - элементы массива свыше limit будут отброшены.
Это поведение отличается от принятого во многих языках програмирования.
Пример: Ограничение массива
var str ="a b с d"
str.split(' ',2)
// ["a", "b"], а не ["a" "b c d"]
Следующий пример иллюстрирует добавление в массив результатов захвата вложенными скобками.
Пример: Вложенные скобки
var myString = "Hello 1 word. Sentence number 2."
var splits = myString.split(/(\d)/)
// splits = ["Hello ", "1", " word. Sentence number ", "2", "."]
Благодаря скобкам, найденный разделитель separator сохранился и вошел в результирующий массив.
Автор: Сварга (не зарегистрирован), дата: 15 декабря, 2009 - 21:26
#permalinkМожно ли по аналогии с myString.split(/(\d)/)
использовать что-то вроде myString.split(/(\[A-Za-z0-9])/) ?
Естественно это не работает, но что-то в этом духе
Автор: Бобр, дата: 29 января, 2010 - 16:28
#permalinkКак найти отдельные слова и строчки в кавычках? В поисковых строках обычно когда надо найти фразу, то её берут в кавычки. Например:
word "big phrase"
Такой текст должен быть разделён на два элемента массива:
1) word
2) big phrase
Как это сделать?
Автор: Increazon, дата: 5 августа, 2010 - 23:25
#permalinkа да! я это и искал!!!
Автор: гость0101110 (не зарегистрирован), дата: 13 октября, 2010 - 14:09
#permalinkкак можно узнать, сколько элементов получилось в массиве?
(исходная строка каждый раз разная)
Автор: Гость (не зарегистрирован), дата: 17 октября, 2010 - 15:10
#permalinkкак сделать, чтобы разделители тоже записывались в поля?
Автор: Гость (не зарегистрирован), дата: 2 ноября, 2010 - 14:48
#permalinkПомогите плииииз.
Написать функцию, которая проверяет, что в строке, переданной в качестве аргумента, передается время в формате "чч.мм" или "чч.мм.сс". Если это так, то функция возвращает true, в противном случае - false.
Автор: djembuka, дата: 3 марта, 2011 - 10:13
#permalinkЕсли separator является регулярным выражением со вложенными скобками, то каждый раз при совпадении separator все результаты захвата скобками, включая undefined результаты, добавляются в выходной массив.
К сожалению, в IE вплоть до 8 результаты захвата скобками в массив не добавляются.
Автор: Vorber (не зарегистрирован), дата: 14 марта, 2011 - 16:41
#permalinkВложенные скобки в регулярке не работают в ИЕ (как минимум 8-м). Я бы это добавил в описание примера.
Автор: Даниил (не зарегистрирован), дата: 16 декабря, 2011 - 20:13
#permalinkу меня строка
var str="2.9 2.6 2.5";
делаю через
str.split(',',3);
у меня все равно массив заполняется так
alert(str[0]); // 2
alert(str[1]); // .
alert(str[2]); // 9
а надо str[0]=2.9
str[1]=2.6
Автор: Гость (не зарегистрирован), дата: 20 декабря, 2011 - 15:21
#permalinkvar str = "2.9 5.6 7.8";
str = str.split(' '); //пробел между кавычками
alert(str[2]); //7.8
сепаратор тут не запятая, а пробел. ты его не ставишь, поэтому выходит '2','.' и '9'
Автор: Гость (не зарегистрирован), дата: 28 декабря, 2011 - 18:39
#permalinkfunction(file, response){
#тут некие действия функции
response.split('#');
alert(response[0]); // выдает: "s", хотя в функцию респонс приходит таким: success#image_name.jpg
}
Автор: Гость (не зарегистрирован), дата: 30 марта, 2012 - 19:43
#permalinkДоброго времени суток, помогите пожалуйста, наткнулся на такое задание
Напишите сценарий, выводящий на экран текст стихотворения:
Мы ехали на машине ПОБЕДА
Остались мы без ОБЕДА
Случилась БЕДА
Пропала ЕДА
Ты ее съела? – ДА
При этом слова, выделенные жирным шрифтом, получились от исходного слова «победа» (строчные буквы!), путем использования методов объекта String.
Как именно это нужно сделать корректно, чтобы не вызывало ошибок?
Автор: Гость Алексей (не зарегистрирован), дата: 20 апреля, 2012 - 16:46
#permalinkиз php аяксом json_encode(php_массив) возвращает строку:
(new String("{\"67640\":\"\\u0410\\u043d\\u0433\\u0430\\u0440\\u0441\\u043a\",\"68511\":\"\\u0411\\u0440\\u0430\\u0442\\u0441\\u043a\" ...
Как эту строку сделать массивом?
Автор: alexx777 (не зарегистрирован), дата: 5 июля, 2012 - 09:07
#permalinkподскажите пожалуйста,
есть строка: -слово1 -слово2 -слово3...
как добавить слова в массив чтобы было: ["слово1", "слово2", "слово3"..], т.е. без тире?
Автор: Семён Семёнович (не зарегистрирован), дата: 16 июля, 2012 - 13:43
#permalinkПодскажите как быть в случае, когда нужно сделать массив букв из слова и нет никаких разделителей.
"проба" - "п" "р" "о" "б" "а" , а также как склеить из массива слово (обратная операция)
Автор: dexif (не зарегистрирован), дата: 12 сентября, 2012 - 11:00
#permalinkСтрока уже является массивом букв...
var s="проба"; for(var i=0;i<s.length;i++){ alert(s[i]); }Автор: Гость (не зарегистрирован), дата: 26 ноября, 2012 - 15:02
#permalinkПодскажите пожалуйста, как разбить текст без пробелов по кол-ву символов?
например (по 3 символа): исходник - "абвгдеу", на выходе - "абв", "где", "у"
Автор: jsbot, дата: 23 января, 2013 - 23:28
#permalinkполучаю текст от пользователя но при разбиении если в тексте есть спец символы
например
разбивает его на & и nbsp;.что делать, подскажите
Автор: Гость, дата: 11 мая, 2013 - 12:22
#permalinkЗдравствуйте. Подскажите, пожалуйста, почему
"ccc;<p>ddd</p>".split(';')Выводит
вместо
?
Автор: atlantidu (не зарегистрирован), дата: 6 сентября, 2013 - 09:42
#permalink> Подскажите пожалуйста, как разбить текст без пробелов по кол-ву символов?
Подсказываю:
var count = 5; // количество var string = "abcxyz123^"; // исходная строка var pattern = RegExp("((.{"+count+"})+?|(.{1,"+count+"})$)", "g") var splitted = string.match(pattern); alert(splitted);Автор: Гость (не зарегистрирован), дата: 16 сентября, 2013 - 18:53
#permalinkЭто совсем не комментарий это крик о помощи!!!! Так и не смог найти ответ на мой вопрос....... имеется строка такого вида : str_ing = "<a href="img/pic_01.jpg"><img src="img/pic_01_s.jpg"></a><a href="img/pic_02.jpg"><img src="img/pic_02_s.jpg"></a> <a href="img/pic_03.jpg"><img src="img/pic_03_s.jpg"></a>" необходимо получить массив вида : arr_str[0] = "<a href="img/pic_01.jpg"><img src="img/pic_01_s.jpg"></a>" arr_str[1] = "<a href="img/pic_02.jpg"><img src="img/pic_02_s.jpg"></a>" arr_str[2] = "<a href="img/pic_03.jpg"><img src="img/pic_03_s.jpg"></a>" пишу так - var arr_str = pic_msg.split('</a>'); эффект нулевой Я понимаю, что затык в использовании в качестве сепаратора "</a>" (другие сепараторы проходят) но как вывернуться не могу понять. ПОМОГИТЕ !!!!! Думаю, что этот вопрос будет интересен и другим. Хорошо бы и сепаратор оставить в строке, но добавить к каждой строке эту потерю не так и сложно, правда это лишнее действие Спасибо Берегите себя и своих близких БорисАвтор: Гость (не зарегистрирован), дата: 10 декабря, 2013 - 10:10
#permalinkМне надо написать класс, который считал бы сегменты. И чтоб он не разделял, например: "как-то", считал за один сегмент. прошу Вас, люди добрые помогите! я представления не имею, как это сделать...
Автор: Гость (не зарегистрирован), дата: 12 января, 2014 - 11:24
#permalinkПодскажите, пожалуйста, как можно разбить строку по всем прописным буквам?
Автор: Mellon (не зарегистрирован), дата: 14 января, 2014 - 08:24
#permalinkПочему вы переводите в "If separator is a regular expression that contains capturing parentheses, then each time separator is matched, the results (including any undefined results) of the capturing parentheses are spliced into the output array. However, not all browsers support this capability." capturing как вложенные? capturing - захватывающие, имеется в виду открывающая и закрывающая скобка.
Автор: Vs_1802 (не зарегистрирован), дата: 3 февраля, 2014 - 20:36
#permalinkДоброго времени суток! Подскажите пожалуйста регулярное выражение, что бы получить массив со строки, и исключить "разделитель", что находится внутри скобок. Вот строка:
sel,1,function(par1,par2),2
Результат: "sel","1","function(par1,par2)","2"
Заранее спасибо!
Автор: Гость (не зарегистрирован), дата: 17 февраля, 2014 - 01:09
#permalinkНашел скрипт, который считает слова в тексте. Слова считаю в XUL textbox.
Все работает при латинице. Однако кириллические буквы и слова не видит. Скрипт привожу ниже.
var stringText = document.getElementById("text").value.replace(/\n/," ").replace(/\W/gi," ").replace(/\s{2,}/gi," ").replace(/ $/,"").replace(/^ /,""); var text_array = stringText.split(" "); document.getElementById("rezstattextword").value = text_array.length;Как мне посчитать слова на любом языке?
Автор: Гость (не зарегистрирован), дата: 8 апреля, 2014 - 14:58
#permalinkЗдравствуйте! Есть один вопрос:
Есть текстовое поле, в которое вводим числа через пробел - целые, дробные, отрицательные - все короче. Нужно найти максимум среди этих чисел.
Есть идея, что нужно строку разбить на элементы, запилить эти элементы в числовой формат и сделать из них массив чисел. А потом уже пробежаться по массиву функцией Math.max.
Подскажите пожалуйста, как из строки чисел сделать массив чисел.... Пожалуйста, помогите! :-)
Автор: Гость (не зарегистрирован), дата: 22 июня, 2017 - 16:45
#permalinkЛюди, помогите, пожалуйста. Есть задача: считать файл, разбить текст по строкам и занести эти строки в массив, методом перебора перебрать все элементы массива и удалить те, в которых есть символ ";", а также убрать пробелы и пустые строки, очищенный массив сохранить в новом файле. Алгоритм как это сделать понимаю, не хватает знаний реализовать это!
Автор: Гость (не зарегистрирован), дата: 15 августа, 2017 - 22:57
#permalink"data": {
"new": "[[\"Арбуз\",\"Тыква\",\"\",\"5\",\"\",\"\",\"7\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\",\"\"]]"
}
// Как распарсить вот такую ерунду ?
Автор: mcmega, дата: 12 ноября, 2017 - 18:12
#permalinkПодскажите, а если есть строка (я ее достаю как значение ключа из объекта device)
{ "dls":"[\"en\",\"ru\",\"fr\"]" }
Нужно получить точно такой же массив
Как это сделать?
Автор: Айдар Исмагулов (не зарегистрирован), дата: 25 декабря, 2017 - 09:13
#permalinkИнтересно,а как преобразовать строку в ассоциативный массив?
Автор: Гость (не зарегистрирован), дата: 1 ноября, 2018 - 12:47
#permalinkПодскажите, пожалуйста, как сделать, если нужно, чтобы разделителей было несколько. Например, есть текст:
Приветствуются комментарии:
Полезные.
Дополняющие прочитанное.
Вопросы по прочитанному. Именно по прочитанному, чтобы ответ на него помог другим разобраться в предмете статьи. Другие вопросы могут быть удалены.
Для остальных вопросов и обсуждений есть форум.
Нужно удалить знаки препинания, пробелы и т.п. и на выходе получить токенизированный текст, т.е. только слова:
Приветствуются
комментарии
Полезные
и т.д.