Home > OS >  Javascript get the value of an href after a certain pattern
Javascript get the value of an href after a certain pattern

Time:09-21

I have a url like https://www.whatever.com/en-CA/something I want to capture anything that comes after the en-CA/ (the en-CA can be any combination of characters that have two letters, a dash, and two letters.

I am trying to use a regex to

  1. grab the window.location.href

  2. split the href at the pattern that matched the /en-CA/

  3. take the remainder of the href

    window.location.href.split(/^(\/[a-zA-Z]{2})(-)([a-zA-Z]{2}\/)$/[1].match(/.*/)
    

I dont think i quite have the right setup here. How do I accomplish grabbing everything after the /character character dash character character /

CodePudding user response:

Here's my solution

const url = "https://www.whatever.com/en-CA/something";
const result = url.split(/\/[a-z]{2}-[a-z]{2}\//i)[1];

if (!result) throw new Error("Invalid url");

console.log(result);

  • Related