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

正则表达式 - 匹配特定语法并将它们拆分

正则表达式 - 匹配特定语法并将它们拆分

喵喵时光机 2023-05-11 16:01:55
我需要匹配特定的正则表达式语法并将它们拆分,以便我们可以将它们与字典中的等效值匹配。输入:{Expr "string"}{Expr "string"}{Expr}当前代码:value.match(/\{.*\}$/g)期望的输出:[{Expr "string"}][{Expr "string"},{Expr}]
查看完整描述

2 回答

?
达令说

TA贡献1821条经验 获得超6个赞

使用非贪婪量词.*?。并且不要使用$, 因为这会强制它一直匹配到字符串的末尾。


value = '{Expr "string"}{Expr}'

console.log(value.match(/\{.*?\}/g));


查看完整回答
反对 回复 2023-05-11
?
扬帆大鱼

TA贡献1799条经验 获得超9个赞

假设您的 JavaScript 版本支持它,一种选择是将输入拆分为以下正则表达式模式:


(?<=\})(?=\{)

这表示在两个术语之间的每个连接处拆分}{。


var input = "{Expr \"string\"}{Expr}";

var parts = input.split(/(?<=\})(?=\{)/);

console.log(parts);


查看完整回答
反对 回复 2023-05-11
  • 2 回答
  • 0 关注
  • 80 浏览
慕课专栏
更多

添加回答

举报

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