JavaScript 这个正则表达式,不用子模式的话,怎么匹配?

var str = "我看了{三国演义}";

var arr = str.match(/\{.*\}/g) ;


这样的话,匹配出来的是 {三国演义} ,如果我想匹配 三国演义 ,

不用(),也就是不用 /\{(.*)\}/g 的话,能把这个三国演义匹配出来吗?


小唯快跑啊
浏览 408回答 1
1回答

阿波罗的战车

按照你的问题描述,那零宽断言应该是比较好的方案了。能够正确匹配的正则应该是(?<=\{)[^{}]+(?=\}),但是js不支持回顾后发断言(即?<=),那么如果样本是比较规范的{}对的话,[^{}]+(?=\})这个正则可以满足需求。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript