Имеем строку url = 'http://site.loc/?a=1&search=abcdf';
и регулярное выражение re = /\&search\=.*?(?=\&)/g;
Только оно срабатывает, если находит за искомым словом символ &
Если же его нет, то выражение не срабатывает.
Как мне исправить регулярное выражение, что бы оно выполнялось или до & или до конца строки $?
Ответ
Попробуйте. Символ | - это или, также для таких поисков применяется [^&]+ - любые количеством больше 1, кроме &
console.log('http://site.loc/?search=abcdf&a=1'.match(/(\?|&)search=([^&]+)/)[2])
Комментариев нет:
Отправить комментарий