URL parts from url
like in php but for javascript
JavaScript
String.prototype.urlParts = function() {
var loc = this;
loc = loc.split(/([a-z0-9_\-]{1,5}:\/\/)?(([a-z0-9_\-]{1,}):([a-z0-9_\-]{1,})\@)?((www\.)|([a-z0-9_\-]{1,}\.)+)?([a-z0-9_\-]{3,})((\.[a-z]+)(:(\d{1,5}))?)(\/([a-z0-9_\-]{1,}\/)+)?([a-z0-9_\-]{1,})?(\.[a-z]{2,})?(\?)?(((\&)?[a-z0-9_\-]{1,}(\=[a-z0-9_\-]{1,})?)+)?/g);
loc.href = this;
loc.protocol = loc[1];
loc.user = loc[3];
loc.password = loc[4];
loc.subdomain = loc[5];
loc.domain = loc[8];
loc.domainextension = loc[10];
loc.port = loc[12];
loc.path = loc[13];
loc.file = loc[15];
loc.filetype = loc[16];
loc.query = loc[18];
loc.anchor = loc[22];
//return the final object
return loc;
};
document.write("<h1>Example</h1><br />");
var link = "http://asdf.local:8950/a/b/c/index.php?test1=5&test2=789#title";
var locat = link.urlParts();
var itemName;
for (itemName in (locat)) {
if (locat.hasOwnProperty(itemName) && (locat[itemName] !== undefined) && isNaN(itemName)) {
document.write("<strong>" + itemName + ":</strong> " + locat[itemName] + "<br />");
}
}