JavaScript regex to capture a URL without query string
By Flavio Copes
Learn how to use a JavaScript regular expression to capture a URL without its query string parameters, removing anything after the ? or # symbol.
~~~
I had the need to capture a URL without query parameters.
For both http and https links.
(Want to tweak it for your case? Paste it into my regex tester to see the matches live.)
Here’s the regex I used:
/^(http[^?#]+).*/gm
Here’s an example:
const regex = /^(http[^?#]+).*/gm
const result = regex.exec("https://test.com?test=2")
console.log(result)
/*
[ 'https://test.com?test=2',
'https://test.com',
index: 0,
input: 'https://test.com?test=2',
groups: undefined ]
*/

~~~
Related posts about js: