Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 09.11.2017, 12:42
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,075


var str = 'xyz - Learn x in - y';
str = str.match(/(.*?)(?: - )(.*)/).slice(1);
alert(JSON.stringify(str));

Последний раз редактировалось рони, 09.11.2017 в 15:00.
Ответить с цитированием
  #12 (permalink)  
Старый 09.11.2017, 14:37
Профессор
Отправить личное сообщение для Rasy Посмотреть профиль Найти все сообщения от Rasy
 
Регистрация: 17.06.2016
Сообщений: 509

рони,
А зачем в группировке экранирован дефис? Он ведь не имеет специальное значение.
Ответить с цитированием
  #13 (permalink)  
Старый 09.11.2017, 15:00
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,075

Rasy,
убрал
Ответить с цитированием
  #14 (permalink)  
Старый 09.11.2017, 15:02
Аватар для Alexandroppolus
Профессор
Отправить личное сообщение для Alexandroppolus Посмотреть профиль Найти все сообщения от Alexandroppolus
 
Регистрация: 25.10.2016
Сообщений: 1,005

"(?:" и ")" там тоже нафиг не надо бесполезная группировка-то
Ответить с цитированием
  #15 (permalink)  
Старый 09.11.2017, 15:11
Профессор
Отправить личное сообщение для Rasy Посмотреть профиль Найти все сообщения от Rasy
 
Регистрация: 17.06.2016
Сообщений: 509

Сообщение от Alexandroppolus
"(?:" и ")" там тоже нафиг не надо бесполезная группировка-то
Почему? Не жадное повторение, и в поиске пробел и первый дефис мне не нужны
Ответить с цитированием
  #16 (permalink)  
Старый 09.11.2017, 15:13
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,075

Сообщение от Alexandroppolus
бесполезная группировка-то
можно код?
Ответить с цитированием
  #17 (permalink)  
Старый 09.11.2017, 15:16
Аватар для Alexandroppolus
Профессор
Отправить личное сообщение для Alexandroppolus Посмотреть профиль Найти все сообщения от Alexandroppolus
 
Регистрация: 25.10.2016
Сообщений: 1,005

var str = 'xyz - Learn x in - y';
str = str.match(/(.*?) - (.*)/).slice(1);
alert(JSON.stringify(str));


всё то же самое, только убрал группировку вокруг " - "
Ответить с цитированием
  #18 (permalink)  
Старый 09.11.2017, 15:22
Профессор
Отправить личное сообщение для Rasy Посмотреть профиль Найти все сообщения от Rasy
 
Регистрация: 17.06.2016
Сообщений: 509

Alexandroppolus,
Классно! Получается " - " более краткая и точная альтернатива классу символов (?:[\s-]), в нашем случае.

Последний раз редактировалось Rasy, 09.11.2017 в 15:25.
Ответить с цитированием
  #19 (permalink)  
Старый 09.11.2017, 15:23
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,075

Alexandroppolus,
спасибо!
Ответить с цитированием
  #20 (permalink)  
Старый 09.11.2017, 15:28
Аватар для Alexandroppolus
Профессор
Отправить личное сообщение для Alexandroppolus Посмотреть профиль Найти все сообщения от Alexandroppolus
 
Регистрация: 25.10.2016
Сообщений: 1,005

Rasy,
более точная
как правильнее - зависит от задачи.
/ - / - это если надо строго "тире между пробелами"
/\s-\s/ - тире между любыми "пробельными символами"
/[\s-]+/ - произвольная подстрока из "пробельных символов" и тире
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывести кол-во дней до дня Рождения plug-ugly Общие вопросы Javascript 3 14.09.2017 10:16
Запуск браузера (IE6 и выше) без "офорлмения" - без панелей, меню, строки состояния jett Events/DOM/Window 4 23.11.2011 15:58
$.ajax работает без success но при этом часть кода перезагружается!? saturn Элементы интерфейса 0 16.10.2011 10:09
Get запрос в Greasemonkey без обновления страницы 100matolog Общие вопросы Javascript 1 03.10.2011 04:37
Подскажите как в VLC плеере переключать канал без перезагрузки страницы? mff Events/DOM/Window 0 10.05.2010 17:28