gpt4 book ai didi

c++ - 如何在 C++ 正则表达式中第一次匹配时停止?

转载 作者:行者123 更新时间:2023-11-28 02:51:08 25 4
gpt4 key购买 nike

我正在尝试使用 flex 删除 C++ 中的注释。

这是我的示例代码:

cout << "Pulapka \" \
// ma \
/* ma */ \
" << endl;
cout << /*Proba*/"Zabawa \" // ala i kot " << endl;

我想匹配“”之间的所有内容。

我的正则表达式:

(\"[^[]*]*")

我想在第二个引号后停止匹配。这意味着我只需要这个片段:

"Pulapka \" \
// ma \
/* ma */ \
"

最佳答案

以下正则表达式适用于我:

(\".*?(?<!\\)("))

然后您可以提取第一组,这正是您想要的。

注意:我不知道 C++ 是如何工作的,但我不得不使用 s旗帜

演示:http://regex101.com/r/xL4kU8

关于c++ - 如何在 C++ 正则表达式中第一次匹配时停止?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23031499/

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