男人,这是一个尴尬的问题。
我的项目现在是从串行端口ASCII行读取。我正在使用一个逐行读取输出的私有库。每行都用\ r字符标识。我受这个库的限制,因为我必须指定哪个转义字符结束该行。
无论如何,我找到了this documentation online,特别是我对转义字符感兴趣\>和\ s因为\>检查字符串的结尾,并检查是否有空白转义字符。
但是,我不认为这在C ++中是默认的。我甚至不确定文档的用语是什么!
所以我问堆栈溢出的大师;有没有办法只用一个转义字符检查C ++中的多个转义字符?
感谢您阅读..
答案 0 :(得分:2)
您可以尝试使用C ++ 11标准中的std::regex。
如果编译器不支持,如果您不介意使用Qt 5,也可以使用QRegularExpression。
你也可以使用boost库中的regex来实现这一点。
如果您想支持旧版编译器,您甚至可以使用regex(3)。
答案 1 :(得分:0)
是的,这肯定是一个“尴尬形成的问题”。
关于第二点,您将转义字符与正则表达式构造/转义混淆。第二个仅在正则表达式中有效。除非您的库支持它们,否则您将无法成功使用它们。 C++
不对正则表达式提供任何直接支持。只能通过库函数。