gpt4 book ai didi

c++ - c++11中正则表达式的使用

转载 作者:行者123 更新时间:2023-11-28 07:52:54 24 4
gpt4 key购买 nike

我正在使用 VS2010。

我对正则表达式有疑问

我应该使用什么正则表达式来搜索字符串

std::string foo("s:{foo} s1:{bar}");

单词 foo, bar并且可能知道他们的位置。

我以为是这样的

std::regex r("\\{.*\\}");

应该可以。但事实并非如此。为什么?

最佳答案

对于字符串 s:{foo} s1:{bar}

{.*} 会匹配 {foo} s1:{bar}

.* 匹配贪婪,它会匹配到你的情况下的last }


{.*?} 会匹配 {foo} 并且在下一个匹配中它会匹配 {bar}

.*? lazily 匹配,它会匹配到你的情况下的first }

关于c++ - c++11中正则表达式的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13357953/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com