我得到了正则表达式匹配 { }
中的所有内容括号,但我想反转它,所以它确实匹配任何内容,除了 { }
内的文本。
我现在的正则表达式:
/{.*?}/g
- 文字:Blah blah {你好}世界{1010}。
- 匹配:
["{ hello }", "{ 1010 }"]
我需要什么:
- 文字:Blah blah {你好}世界{1010}。
- 匹配:
["Blah blah ", " world "]
感谢您的每一个建议。 :)
最佳答案
您可以轻松地使其与使用 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))
关于javascript - 反向正则表达式匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61562167/