Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/438.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用jquery拆分和连接字符串以获得以下结果_Javascript_Jquery_Arrays_Html - Fatal编程技术网

Javascript 如何使用jquery拆分和连接字符串以获得以下结果

Javascript 如何使用jquery拆分和连接字符串以获得以下结果,javascript,jquery,arrays,html,Javascript,Jquery,Arrays,Html,我有一个字符串 var url="hrefpara1?##0##:##2##para2?##3##:##1##para3?##4##:##6##"; 我有这样的数组 var a=[Arun,Nandha,Gopi,praveen,jack]; 我需要以下字符串结果: hrefpara1?##Arun##:##Gopi##para2?##Praveen##:##Nandha##para3?##jack##:####; 如何使用javascript获取此信息。您可以使用正则表达式 var ur

我有一个字符串

var url="hrefpara1?##0##:##2##para2?##3##:##1##para3?##4##:##6##";
我有这样的数组

var a=[Arun,Nandha,Gopi,praveen,jack];
我需要以下字符串结果:

hrefpara1?##Arun##:##Gopi##para2?##Praveen##:##Nandha##para3?##jack##:####;

如何使用javascript获取此信息。

您可以使用正则表达式

var url="hrefpara1?##0##:##2##para2?##3##:##1##para3?##4##:##6##";

var a=["Arun","Nandha","Gopi","praveen","jack"];


url = url.replace(/(##)([^#]*)(##)/g,function (match,prefix,index,suffix) {
    return (a[+index]) ?prefix+a[+index]+suffix : prefix+suffix;
});


console.log(url);

很好。你能解释一下吗?我正在使用正则表达式查找你的模式
#######
,多亏了开关替换方法将查找此模式的所有发生。使用括号
(###)([^#]*)(##)
将模式分为三组,以便在回调函数中更好地引用,使返回的字符串发生变化,回调函数接收四个参数,首先是整个匹配模式,前缀保留模式
中第一组的值(##)
,索引用于
([^#]*)
组和后缀是最后一个
(##)组。在函数中,我只检查索引值的值是否存在于表中,如果不存在,我返回默认模式,否则我从表中返回值。我正在使用
+索引
将字符串转换为int@Neophyte你有什么问题吗?