为了账号安全,请及时绑定邮箱和手机立即绑定

如果单词以“:”结尾,则将下一个单词用引号引起来

如果单词以“:”结尾,则将下一个单词用引号引起来

跃然一笑 2023-10-14 15:50:57
我有一些想用正则表达式操作的字符串。输入 foo: bar hello: world cats: dogs输出 foo: 'bar' hello: 'world' cats: 'dogs'现在我知道我可以使用Javascript的replace字符串方法,但我不确定要使用的正则表达式
查看完整描述

1 回答

?
米脂

TA贡献1836条经验 获得超3个赞

您可以尝试以下正则表达式替换:


var input = "foo: bar hello: world cats: dogs";

var output = input.replace(/(\w+): (.*?)(?=\s+\w+:|$)/g, "$1: '$2'");

console.log(input + "\n" + output);

请注意,虽然此方法恰好适用于您提供的确切示例,但正则表达式本身并不是解析工具,因此此答案可能不适合嵌套内容。



查看完整回答
反对 回复 2023-10-14
  • 1 回答
  • 0 关注
  • 98 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信