'Remove the string on the beginning of an URL

I want to remove the "www." part from the beginning of an URL string

For instance in these test cases:

e.g. www.test.comtest.com
e.g. www.testwww.comtestwww.com
e.g. testwww.comtestwww.com (if it doesn't exist)

Do I need to use Regexp or is there a smart function?



Solution 1:[1]

Depends on what you need, you have a couple of choices, you can do:

// this will replace the first occurrence of "www." and return "testwww.com"
"www.testwww.com".replace("www.", "");

// this will slice the first four characters and return "testwww.com"
"www.testwww.com".slice(4);

// this will replace the www. only if it is at the beginning
"www.testwww.com".replace(/^(www\.)/,"");

Solution 2:[2]

Yes, there is a RegExp but you don't need to use it or any "smart" function:

var url = "www.testwww.com";
var PREFIX = "www.";
if (url.startsWith(PREFIX)) {
  // PREFIX is exactly at the beginning
  url = url.slice(PREFIX.length);
}

Solution 3:[3]

If the string has always the same format, a simple substr() should suffice.

var newString = originalString.substr(4)

Solution 4:[4]

Either manually, like

var str = "www.test.com",
    rmv = "www.";

str = str.slice( str.indexOf( rmv ) + rmv.length );

or just use .replace():

str = str.replace( rmv, '' );

Solution 5:[5]

You can overload the String prototype with a removePrefix function:

String.prototype.removePrefix = function (prefix) {
    const hasPrefix = this.indexOf(prefix) === 0;
    return hasPrefix ? this.substr(prefix.length) : this.toString();
};

usage:

const domain = "www.test.com".removePrefix("www."); // test.com

Solution 6:[6]

Try the following

var original = 'www.test.com';
var stripped = original.substring(4);

Solution 7:[7]

const removePrefix = (value, prefix) =>
   value.startsWith(prefix) ? value.slice(prefix.length) : value;

Solution 8:[8]

You can cut the url and use response.sendredirect(new url), this will bring you to the same page with the new url

Solution 9:[9]

Another way:

Regex.Replace(urlString, "www.(.+)", "$1");

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Mike
Solution 2
Solution 3 Muhammad Reda
Solution 4 jAndy
Solution 5
Solution 6 JaredPar
Solution 7 Archibald
Solution 8 Ofer
Solution 9 piris