This question already has answers here:
Get path and query string from URL using javascript
(5 answers)
Closed 5 years ago.
I want current url path along with its query string.
I have tried below but not getting desired output.
var pathname = window.location.pathname; // Returns path only
var url = window.location.href;
Suppose my url is http://localhost:1111/Contact/Index?text=aa.
Note : query string is optional here if there is no query string then it should provide pathname only.
I want /Contact/Index?text=aa, TIA.
In jQuery you can do
$(location).attr('href')
The location object also contains properties, like host, hash, protocol, and pathname.
This window.location.pathname will give you the path or the url.
Related
This question already has answers here:
How do I parse a URL into hostname and path in javascript?
(26 answers)
Closed 2 years ago.
Let's say I have a string like this
let content = "https://stackoverflow.com/questions/ask";
Now I want to write a regex what will give me only the actual domain with the protocol
example: from content, I should get only "https://stackoverflow.com"
No need to write a regex when the ability to parse URLs already exist.
MDN: Web technology for developers > See Web APIs > URL
const url = new URL("https://stackoverflow.com/questions/ask");
console.log(`${url.origin}`); // Includes port
console.log(`${url.protocol}//${url.hostname}`); // Alternatively...
This question already has an answer here:
Fetching the window.location.pathname with a Pound Sign in the URL - javascript
(1 answer)
Closed 3 years ago.
My full URL is
/settings/logs#/extra
but window.location.pathname just returns
/settings/logs
In the browser, how do I get the full path including the # and the information after it?
You can use window.location.href to obtain the full url (with protocol, host, etc.) or concat the window.location.pathname with window.location.hash if you only need the "path".
console.log(window.location.href); // Result: https://www.google.com/path/#hash
console.log(window.location.pathname + window.location.hash); // Result: /path/#hash
See Location API
Try window.location.href
For further info:
https://www.w3docs.com/snippets/javascript/how-to-get-current-url-in-javascript.html
This question already has answers here:
Parsing domain from a URL
(19 answers)
Closed 5 years ago.
I am receiving URL from an application as post data.
The URL has a signature : //abc.com/name?q=123456.
I want to extract name from the URL using regex ( Regular Expression )
How do I do that?
Best method is parsing url, but if you need regex to extract name :
/.+\/([^\?]+?)(\?|$)/gm
Demo
Note: this regex pattern match whole url, but captures name that you want in Group 1.
This question already has answers here:
How can I delete a query string parameter in JavaScript?
(27 answers)
Closed 7 years ago.
I have a query string that I need to remove a certain parameter from. For instance, my query string may be "?name=John&page=12&mfgid=320", and I need to remove the "page" parameter from it and end up with "?name=John&mfgid=320". I cannot assume that the "page" parameter is or isn't followed by other parameters.
All my attempts at using JavaScript functions/regex are failing miserably, so I could really use a hand in getting this working. Thanks.
That's quite easy... It's just /page=\d+&?/
var uri = '?name=John&page=12&mfgid=320';
uri = uri.replace(/page=\d+&?/,'');
You can use:
uri = uri.replace(/[?&]page=[^&\n]+$|([&?])page=[^&\n]+&/g, '$1');
RegEx Demo
We'll need to use alternation to cover all the cases of presence of query parameter. Check my demo for all test cases.
This question already has answers here:
Regular expression for URL
(10 answers)
Closed 8 years ago.
here is my regexp
var url_reg = /^(http[s]?:\/\/|ftp:\/\/)?(www\.)?[a-zA-Z0-9-\.]+\.(com|org|net|mil|edu|ca|in|au)+/;
it works fine for single input like https://www.google.com , but
it allows double or more "http/https/www" like below -
https://www.google.com/https://www.google.com/
url can also include folder like google.com/folder/file
i need to validate single occurrence of valid url.
Can anyone help me?
To validate a URL, you can use a regex. This is what I use. A valid URL per the URL spec. The URL you have provided, is actually a valid URL per the URL spec.
/^((((https?|ftps?|gopher|telnet|nntp):\/\/)|(mailto:|news:))(%[0-9A-Fa-f]{2}|[-()_.!~*';\/?:#&=+$,A-Za-z0-9])+)([).!';/?:,][[:blank:]])?$/
This was borrowed from OSWAP