У меня есть два URL-адреса и вам нужно записать строку после расширения домена, если это двухсимвольная строка и заканчивается символом «/». До сих пор я получил это:Regex соответствует подгруппе, которая заканчивается на «/»
var t1 = "http://www.test.net/shop/test-3";
var t2 = "http://www.test.net/gb/shop/test-2";
var rgx = /\.([a-z]{0,3})\/([a-z]{2}\/)?/;
console.log(rgx.exec(t1));
console.log(rgx.exec(t2));
Он выплевывает
[".net/", "net", undefined]
[".net/gb/", "net", "gb/"]
, который является правильным, за исключением того, я не хочу, чтобы захватить «гб /», но «гб» вместо этого. Есть идеи? Я совершенно застрял ..
Итак, любые комментарии для downvote? – vlaz
Не знаете, почему пустые голоса, но я закончил с этим. Кроме того, оказалось, что мне также необходимо сделать трейлинг-косую факультативу, так что закончил с /\.([az]{0,3})\/([az]{2}(?=\/|$))?/ –
@EvaldasRaisutis да, если у вас есть другие после двух символов, вышеупомянутое регулярное выражение сработало бы, но не, если это последнее в URL. Я просто добавлю это в ответ для лучшей видимости. – vlaz