Javascript在http://之后添加到字符串?

我有一个urlhttp://blah.com ,我想把url添加到blah.com的前面

这将导致http://something_blah.com

这可以用javascript吗?

问候,

var url = "http://blah.com" var new_url = url.replace(/^http:\/\//, "http://something_") 

/^http:\/\//是一个正则表达式 ,一种用于匹配字符串模式的对象。 这允许我指定(使用^ )我只想替换https://如果它出现在字符串的开头。

如果您知道该字符串将以“http://”开头,您也可以使用字符串作为替换目标,因为.replace()仅默认替换第一个匹配项。

 var new_url = url.replace("http://", "http://something_") 

如果你想要一些适用于任何协议,HTTP,HTTPS,FTP等的东西,你可以使用一个正则表达式“捕获”原始字符串的那一部分并在替换中使用它。

 var new_url = url.replace(/^([a-zA-Z][a-zA-Z0-9\.\+\-]*):\/\//, "$1://something_") 

逐个打破这个特殊的pattenern:

  • ^它必须从字符串的开头开始
  • (开始“捕获”组
  • [a-zA-Z]匹配任何字母
  • [a-zA-Z0-9\.\+\-]*后跟任意字母,数字,句号,加号或连字符,重复任意次数。
  • )结束捕获组
  • :\/\/匹配"://"

使用Javacript替换

 myString = "http://blah.com"; myString.replace("http://", "http://something_"); 

这个适用于http或https

  var url = window.location.href; var i = url.indexOf ('://') + 3; var newUrl = url.substring(0, i) + 'something_' + url.substring (i, url.length); window.location.href = newUrl; 

你不需要jQuery。 使用split()。

 var text = 'something_'; var a = "http://blah.com"; var b = a.split("http://")[1]; var c = "http://"+text+b; alert(c);