Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 24.06.2016, 03:37
Аспирант
Отправить личное сообщение для Sherminator Посмотреть профиль Найти все сообщения от Sherminator
 
Регистрация: 01.08.2012
Сообщений: 50

Разбитие textarea с помошью регулярки
Всем привет!

Имеем textarea, с него получаем строки и их нужно рассортировать по логике, но в регулярках слабоват.

Логика:
строку вида
Artist - track (Ori Mix)
пишем в массив вида
Код:
arr['name'] = 'Artist - track (Ori Mix)'
a
Artist - track (Ori Mix) ## 1:4:32
пишем в массив вида
Код:
arr['name'] = 'Artist - track (Ori Mix)';
arr['time'] = '1:4:32';
Все как бы ничего, когда строка Artist - track (Ori Mix) ## 1:4:32 проходит, то все хорошо, match[1] вернет название match[2] - время.
Но вот строка вида Artist - track (Ori Mix) возвращается 3-ей группой(match[3]) и по регулярке видно.

Вопрос
Как переделать регулярку, чтобы даже в ином случае название возвращалось в match[1]


Сама регулярка
Код:
^(.*)\s*?##\s*(\d*:\d*:\d+)$|^(.*)\s*?$
Ответить с цитированием
  #2 (permalink)  
Старый 25.06.2016, 23:04
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Sherminator,
var str = "Artist - track (Ori Mix) ## 1:4:32", reg = /[^\s#][^#]+[^\s#]/g;
alert( JSON.stringify(str.match(reg)));
str = "Artist - track (Ori Mix)";
alert( JSON.stringify(str.match(reg)));
Ответить с цитированием
  #3 (permalink)  
Старый 28.06.2016, 13:02
Аспирант
Отправить личное сообщение для Sherminator Посмотреть профиль Найти все сообщения от Sherminator
 
Регистрация: 01.08.2012
Сообщений: 50

То, что нужно. Спасибо. Но не могли бы вы объяснить принцип работы
Ответить с цитированием
  #4 (permalink)  
Старый 28.06.2016, 16:08
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Сообщение от Sherminator
Но не могли бы вы объяснить принцип работы
/[^\s#][^#]+[^\s#]/g; начать и закончить выборку с непробела и нерешотки в середине символы нерешотки

Последний раз редактировалось рони, 28.06.2016 в 17:53.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Из одного textarea в другой… Chile Events/DOM/Window 1 10.02.2016 09:16
Вопрос по textarea stivins Элементы интерфейса 3 05.11.2015 16:59
не могу программно изменить значение textarea в онлайн редакторе rusik Общие вопросы Javascript 6 24.10.2015 15:01
обновить textarea wp2 Events/DOM/Window 6 03.02.2012 23:44
bbcodes вставляются в чужой textarea foreach Events/DOM/Window 2 30.01.2012 21:15