Javascript.RU

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

Сообщение от Sergey1986
Так более понятно?
Сообщение от ksa
когда речь идет о регулярках, обычно пишут:
- Имею вот такую строку, хочу из нее получить вот такое.
Ответить с цитированием
  #12 (permalink)  
Старый 30.04.2019, 12:53
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

url = 'user/1';
template = /user\/(\d+)/g; 

arr = url.match(template); 

console.log(template); 
console.log(arr);
Ответить с цитированием
  #13 (permalink)  
Старый 30.04.2019, 14:04
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,228

Сообщение от Sergey1986
template = 'user/{id:\d+}';
Из этой строки
Вот это
Сообщение от Sergey1986
arr[id] = 1 //(условно)
Не получить.
Так понятно?
Ответить с цитированием
  #14 (permalink)  
Старый 30.04.2019, 15:05
Аватар для Alexandroppolus
Профессор
Отправить личное сообщение для Alexandroppolus Посмотреть профиль Найти все сообщения от Alexandroppolus
 
Регистрация: 25.10.2016
Сообщений: 1,012

Сообщение от Sergey1986 Посмотреть сообщение
Доброго времени суток!

есть таккая вот штука

url = 'user/1';
template = 'user/{id:\d+}'; 

template = template.replace(/{([A-Za-z]+):([^\}]+)}/g, '(?<id>/\d+)'); //в пхп (?P<\1>\2)
template = '^' + template + '$';

arr = url.match(template); 

console.log(template); 
console.log(arr);


выводит

"^user/(?<id>/d+)$"
null


Где делаю ошибку
url = 'user/1';
template = 'user/{id:\\d+}'; 

template = template.replace(/{([A-Za-z]+):([^\}]+)}/g, '(?<$1>$2)'); //в пхп (?P<\1>\2)
template = RegExp('^' + template + '$');

arr = url.match(template); 

console.log(template); 
console.log(arr);
Ответить с цитированием
  #15 (permalink)  
Старый 30.04.2019, 15:08
Аватар для Alexandroppolus
Профессор
Отправить личное сообщение для Alexandroppolus Посмотреть профиль Найти все сообщения от Alexandroppolus
 
Регистрация: 25.10.2016
Сообщений: 1,012

Но если в самой регулярке для значения id будет закрывающая фигурная скобка, то всё летит к черту.
И да, именованные группы появились в js недавно, это может работать не во всех браузерах.
Ответить с цитированием
  #16 (permalink)  
Старый 30.04.2019, 15:56
Аватар для GayCoder
Аспирант
Отправить личное сообщение для GayCoder Посмотреть профиль Найти все сообщения от GayCoder
 
Регистрация: 28.01.2016
Сообщений: 99

vanished

Последний раз редактировалось GayCoder, 02.08.2020 в 16:15.
Ответить с цитированием
  #17 (permalink)  
Старый 30.04.2019, 15:57
Аватар для GayCoder
Аспирант
Отправить личное сообщение для GayCoder Посмотреть профиль Найти все сообщения от GayCoder
 
Регистрация: 28.01.2016
Сообщений: 99

vanished

Последний раз редактировалось GayCoder, 02.08.2020 в 16:15.
Ответить с цитированием
  #18 (permalink)  
Старый 30.04.2019, 16:01
Аватар для GayCoder
Аспирант
Отправить личное сообщение для GayCoder Посмотреть профиль Найти все сообщения от GayCoder
 
Регистрация: 28.01.2016
Сообщений: 99

vanished

Последний раз редактировалось GayCoder, 02.08.2020 в 16:15.
Ответить с цитированием
  #19 (permalink)  
Старый 01.05.2019, 10:30
Профессор
Отправить личное сообщение для Sergey1986 Посмотреть профиль Найти все сообщения от Sergey1986
 
Регистрация: 28.02.2018
Сообщений: 172

Все классно, а как получить то массив?

arr [id] = 1 или если несколько параметров заложено arr [id] = 1 и arr[pid] = 2
Ответить с цитированием
  #20 (permalink)  
Старый 01.05.2019, 10:33
Профессор
Отправить личное сообщение для Sergey1986 Посмотреть профиль Найти все сообщения от Sergey1986
 
Регистрация: 28.02.2018
Сообщений: 172

Спасибо за помощь Alexandroppolus !!!!не увидел кейс с решением
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вылет снова в очередь на fifa.com fifa2018 Ваши сайты и скрипты 0 10.07.2018 15:53
Очередная регулярка. Цена Redya69 Общие вопросы Javascript 11 16.08.2013 01:16
Регулярка для комментариев /* comment */ , опционально закрытых danik.js Общие вопросы Javascript 4 12.01.2013 03:24
регулярка для парсинга SQL запроса Yurik Общие вопросы Javascript 2 09.12.2011 15:08
Регулярка на дробные числа shkarbatov Javascript под браузер 14 29.07.2011 01:05