首先按位或“|”拆分字符串 然后通过逻辑或'||' 在 jquery 中

我有一个字符串st="product1 || 78,500/- | product2,product3,product4 || 48,500/-"

首先,我通过“|”执行了拆分字符串

arr=st.split('|')然后再用 '||' 分割 像arr[0].split('||')

但它返回的结果就像

product1,,78500/-,product2,product3,product3,product4,,58500

但我想要像第一次被“|”分割的结果

product1||78500product2,product3,product4||58500

并从第二次分裂为“||” 结果应该像

product1,78500product1,product2,product3,product4,58500

我们如何做到这一点?


慕运维8079593
浏览 79回答 2
2回答

犯罪嫌疑人X

使用精确的标记拆分数据。|也在考虑||。st="product1 || 78,500/- | product2,product3,product4 || 48,500/-";arr1=st.split(" | ")arr2=[]for(var i=0;i<arr1.length;i++)document.getElementById("data").innerText+=arr1[i].split(" || ")+"\n";<div id="data"></div>

繁花如伊

另外,另一种方法。在这里,我们将一个字符串替换为另一个字符串,这样 split 函数就不会混淆。下面是代码//First Splitvar st = "product1 || 78,500/- | product2,product3,product4 || 48,500/-"st = st.replace(/\|\|/g, "~");arr = st.split("|");//Second Splitvar finalArr = [];for (var i = 0; i < arr.length; i++) {&nbsp; finalArr.push(arr[i].split("~"));}console.log("First Split");console.log(arr);console.log("Second Split");console.log(finalArr);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript