Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/143.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在c++;? 是否可以在C++中为正则表达式直接编写注释?我发现Python中的多行可注释正则表达式在以后的可读性和可维护性方面非常好。否则,为正则表达式编写注释的规范方法是什么 对不起,这可能是一个重复的问题,但是我的搜索只是打开C++的正则表达式来找到C风格的注释……/p>< p>如果正则表达式被输入为一个常规的C++字符串,那么它很容易。两个引用的字符串在C++中彼此相邻,自动地合并成一个大字符串,即使注释是混合的。因此: "^Hello " /* this is the first part of my regex */ "World!$" /* this is the second part of my regex */_C++_Regex - Fatal编程技术网

在c++;? 是否可以在C++中为正则表达式直接编写注释?我发现Python中的多行可注释正则表达式在以后的可读性和可维护性方面非常好。否则,为正则表达式编写注释的规范方法是什么 对不起,这可能是一个重复的问题,但是我的搜索只是打开C++的正则表达式来找到C风格的注释……/p>< p>如果正则表达式被输入为一个常规的C++字符串,那么它很容易。两个引用的字符串在C++中彼此相邻,自动地合并成一个大字符串,即使注释是混合的。因此: "^Hello " /* this is the first part of my regex */ "World!$" /* this is the second part of my regex */

在c++;? 是否可以在C++中为正则表达式直接编写注释?我发现Python中的多行可注释正则表达式在以后的可读性和可维护性方面非常好。否则,为正则表达式编写注释的规范方法是什么 对不起,这可能是一个重复的问题,但是我的搜索只是打开C++的正则表达式来找到C风格的注释……/p>< p>如果正则表达式被输入为一个常规的C++字符串,那么它很容易。两个引用的字符串在C++中彼此相邻,自动地合并成一个大字符串,即使注释是混合的。因此: "^Hello " /* this is the first part of my regex */ "World!$" /* this is the second part of my regex */,c++,regex,C++,Regex,相同地解析为: "^Hello World!$" /* this is the whole regex on one line */ 这取决于您要评论的级别。断章取义 上面的正则表达式,解释它试图 比赛,可能是最重要的。但是如果你有 有些事情很复杂,你可以把这个表达式分解成 多个字符串文字(只有空格和 他们之间的评论)和评论: std::regex matchFloatingPointLiteral( "\\d+\\.\\d*(?:[Ee][+-]\\d+)?" //

相同地解析为:

"^Hello World!$" /* this is the whole regex on one line */

这取决于您要评论的级别。断章取义 上面的正则表达式,解释它试图 比赛,可能是最重要的。但是如果你有 有些事情很复杂,你可以把这个表达式分解成 多个字符串文字(只有空格和 他们之间的评论)和评论:

std::regex matchFloatingPointLiteral(
        "\\d+\\.\\d*(?:[Ee][+-]\\d+)?"    //  matches forms starting with digit
    "|" "\\.\\d+(?:[Ee][+-]\\d+)?"        //  matches forms starting with a .
    "|" "\\d+?:[Ee][+-]\\d+"              //  matches forms with no decimal
    );
这在正则表达式开始运行时非常有用
复杂。

答案取决于您使用的正则表达式库?还有别的吗

Regex的Perl语法支持,尽管语法看起来没有Python的好。PCRE应该支持Python风格的注释。我在
std::regex
中没有看到任何关于注释的内容

否则,您有两个选择

首先,字符串连接非常简单


第二,在C++11中,您可以创建一个能够理解并删除注释的程序。

哇,我不知道它们会自动合并。整洁的