const data={id:12345678,...}
→ data={id:"12345678",...}
具体就是匹配id字段,并给他的值加上引号变成字符串
看这个样式,像是要在编辑器里进行查找替换哇。各编辑器支持的正则语法可能会略有差异,下图是 VSCode
查找 id:(\d+)
,如果冒号后有可能存在空格,那就 id:\s*(\d+)
替换 id:"$1"
,其中 $1
表示上面括号中匹配到内容(不同编辑器也有可能是用 \1
来表示的)
正则不太会,只能写出这么个玩意儿了:
data.replace(/(id:\d+)/, (_, c) => `${c.replace(/(\d+)/, (___, d) => `"${d}"`)}`)
// 说明:
'{id:12345678,...}'
// 计划直接将 id:12345678 替换成 id:"12345678"
.replace(
// 匹配出 id:12345678
/(id:\d+)/,
// replacement函数
// 详细说明见:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String/replace#%E6%8C%87%E5%AE%9A%E4%B8%80%E4%B8%AA%E5%87%BD%E6%95%B0%E4%BD%9C%E4%B8%BA%E5%8F%82%E6%95%B0
(_, c) =>
// 以同样的方式找到 12345678,并把这一段换成 "12345678"
`${c.replace(/(\d+)/, (_, d) => `"${d}"`)}`)
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
都可以!