如何使用javascript正则表达式替换URL 的主机部分.这可以是带或不带http的任何类型的URL.假设此文本来自json文件的内容.
OldText:
{ "auth" : { "login" : "http://local.example.com:85/auth/signin", "resetpass" : "http://local.example.com:85/auth/resetpass", "profile" : "http://local.example.com/auth/profile" } }
期待像这样的解决方案:
var NewText = OldText.replace (/(some regex)/g, 'example.com');
将NewText作为:
{ "auth" : { "login" : "http://example.com:85/auth/signin", "resetpass" : "http://example.com:85/auth/resetpass", "profile" : "http://example.com/auth/profile" } }
我在这里发现了相同的内容,但正则表达式无法在javascript中运行.
注意:我正在寻找正则表达式.
您可以使用URL功能并设置新的主机名:
var oldUrl = "http://host1.dev.local:8000/one/two"; var url = new URL(oldUrl); url.hostname = 'example.com'; url.href //'http://example.com:8080/one/two'