javascript - 从 JavaScript 中的名称-值对字符串中删除值

标签 javascript

我有一个 JavaScript 字符串,例如 dog=1,cat=2,horse=3。名称和值可以是任何内容。我想从字符串中删除狗以及与之相关的任何值。所以在这个例子中我最终会得到cat=2,horse=3。字符串中可能没有狗的条目,它可以位于字符串中的任何位置,例如cat=22,dog=17,horse=3 最终结果为 cat=22,horse=3

名称和值只是字母数字,其中没有特殊字符,例如引号和等号。

在 JavaScript 中解决这个问题的最佳方法是什么?

最佳答案

最简单的解决方案:

str.split(",").filter(function(kv) {
    return kv.slice(0, 4) != "dog=";
}.join(",")

您也可以执行一些正则表达式魔法,但这不会那么清晰(且可维护):

str.replace(.replace(/(,|^)dog=[^,]*/g, "").replace(/^,/,"")

关于javascript - 从 JavaScript 中的名称-值对字符串中删除值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29282782/

相关文章:

javascript - 当我运行 react.js 代码时,我有这个错误说 "Cannot update a components while rendering a different component"

javascript - XMLHttpRequest 卸载?

javascript - Angularjs 的推荐代码/项目结构

javascript - "getDate().toJSON()"失去一天

javascript - 实体位置更改时不进行视觉更新

javascript - 使用 innerHTML 属性显示另一个 html 文件的内容?

javascript - CRM 2011 Outlook 客户端中的随机 JavaScript 错误

javascript - 在YUI3中,有没有办法将 "reset"模型转换为以前保存的值?

javascript - 如何在无需登录的情况下访问 Google Analytics Api 数据

Javascript:确定字符串中的所有字符是否都是唯一的,如果不是,则删除重复的字符