在html编辑器中,我将一些文本写入特定格式。
示例:
测试测试测试{{LATEL1}}测试测试测试{{LATEL2}}测试测试 测试
在这里,我想获取所有写入{{}}的数据。我希望将所有结果都放到数组中。
我认为这可以使用regexp来完成。你能帮我解决一下这个问题。如果还有其他简单方法,请告诉我。
答案 0 :(得分:0)
您希望使用non-greedy "anything" quantifier并进行全局匹配。通过这种方式,.*?
确实会匹配任何内容,但一次仅一个字符,这将使您的分隔符{}
'正确匹配:
{{(.*?)}} //global
()
所有的值都是captured,并且应该以数组(或类似数组)的形式提供。匹配'运行全局匹配后的对象。这是regex demo输出:
注意:如果您使用非常大的输入,则此替代但语义上等效的正则表达式可能会更快:{{([^{}]*)}}
(demo)。 (否定的字符类[^{}]*
可以继续并且一次匹配(吃)所有非大括号,而不是.*?
一次只吃一个,这意味着更少的步骤)