Javascript 反向正则表达式匹配
我得到的正则表达式匹配了Javascript 反向正则表达式匹配,javascript,regex,reverse,Javascript,Regex,Reverse,我得到的正则表达式匹配了{}括号中的所有内容,但我想反转它,所以它确实匹配了任何内容,{}中的文本除外 我的正则表达式现在: /{.*?}/g text:废话废话{hello}世界{1010} 匹配:[“{hello}”,“{1010}”] 我需要的是: text:废话废话{hello}世界{1010} 匹配:[“废话”,“世界”] 谢谢你的建议。:) 使用String#split和一个过滤器,您可以很容易地使用您拥有的正则表达式 String#split可以接受一个正则表达式,然后将
{}
括号中的所有内容,但我想反转它,所以它确实匹配了任何内容,{}
中的文本除外
我的正则表达式现在:
/{.*?}/g
- text:废话废话{hello}世界{1010}
- 匹配:
[“{hello}”,“{1010}”]
- text:废话废话{hello}世界{1010}
- 匹配:
[“废话”,“世界”]
谢谢你的建议。:) 使用String#split和一个过滤器,您可以很容易地使用您拥有的正则表达式 String#split可以接受一个正则表达式,然后将字符串拆分为一个数组。筛选器是由于字符串末尾的空值导致的,因为字符串末尾有一个{} 我为您设置了一个演示,但是我将正则表达式修改为
/{[^}\n]*}/g
,这样它就不需要非贪婪量词了
const regex=/{[^}\n]*}/g;
const text1='Blah Blah{hello}world{1010}'
console.log(text1.split(regex).filter(val=>val))
这是吗?s.split(/{.*?}/)