如何在正则表达式匹配结果中包含分隔符?

时间:2013-01-16 19:02:35

标签: c++ regex matchevaluator

目前,我正在使用此模式进行搜索和替换: "(?<=\\{).+?(?=\\})"。这会在花括号中找到所有内容。 (由https://stackoverflow.com/a/8526268/1143917提供)

我将'MatchEvaluator'与委托一起使用,因此,当输入字符串为{this} is a {string}时,委托会收到thisstring

这对我不利,因为我想要替换匹配和大括号。

如何更改我的正则表达式,以便委托将接收包含大括号的匹配项,即{this}{string}

1 个答案:

答案 0 :(得分:1)

删除positve lookbehind和positive lookahead,然后使用括号:

 "\\{[^\\}]+\\}"

我无法确定这一点,因为我从未使用过C ++的正则表达式,但原则是匹配{,加上所有不是}的字符加上{{1} }。