-2

伙计,这是一个尴尬的问题。

我现在的项目是从串行端口 ASCII 行读取。我正在使用一个私有库,它逐行读取输出。每行都用 \r 字符标识。我受到这个库的限制,因为我必须指定结束该行的转义字符。

无论如何,我在网上找到了这个文档,特别是,我对转义字符 \> 和 \s 很感兴趣,因为 \> 检查字符串的结尾,而 \s 检查任何空白转义字符。

但是,我认为这在 C++ 中默认不可用。我什至不确定该文档的语言是什么!

所以我问stackoverflow的大师;有没有办法用一个转义字符检查 C++ 中的多个转义字符?

谢谢阅读..

4

2 回答 2

2

您可以尝试使用C++11 标准中的std::regex

如果你的编译器不支持,如果你不介意使用 Qt 5 ,你也可以使用QRegularExpression 。

您也可以为此使用boost 库中的正则表达式

如果你想使用 C 来支持旧的编译器,你甚至可以使用regex(3)

于 2013-08-30T21:19:21.083 回答
0

是的,这绝对是一个“尴尬的问题”。

关于第二点,您将转义字符与正则表达式构造/转义混淆了。第二个仅在正则表达式中有效。除非您的图书馆支持它们,否则您将无法成功使用它们。 C++不提供对正则表达式的任何直接支持。只能通过库函数。

于 2013-08-30T21:17:31.123 回答