javascript - 加入并替换多次出现的字符串

标签 javascript string parsing replace

我有这个字符串:

var data = "res_per_page=10&page_num=1&location_id=107&location_id=174&location_id=110&location_id=180"

我想将所有“location_id”参数归为一个,用_ 分隔。如何实现?结果字符串应如下所示:

var data = "res_per_page=10&page_num=1&location_id=107_174_110_180"

最佳答案

怎么样; (假设 id 是 1 到 9 位数字)

var newdata = [];
data = data.replace(/&?location_id=(\d{1,9})/ig, function(m, k, v) {
        newdata.push(k);
        return "";
    });
data += "&location_id=" + newdata.join("_");
alert(data);


in:  "res_per_page=10&page_num=1&location_id=107&location_id=174&location_id=110&location_id=180"
out: "res_per_page=10&page_num=1&location_id=107_174_110_180"

关于javascript - 加入并替换多次出现的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5936236/

相关文章:

c# - C# 中的 antlr4 parser.prog

c# - StringSplitOptions.RemoveEmptyEntries 等效于 TextFieldParser

java - 错误: cannot find symbol of Parser

javascript - 如何在谷歌地图上找到某个标记?

javascript - CSV 导入未定义数据

EEST 时区上的 Javascript 日期函数错误

java - 获取字符串的一部分直到某个点

python - 正则表达式匹配不适用于 Pyteomics 解析器的简单字符串

c# - 如何对字符串数组进行冒泡排序?

javascript - Firebase update() - 排除字段