使用std库和函数find
,我怎么知道给定字符串中是否有任何转义字符?
例如:
string line = "bla bla bla \n blabla";
bool hasEscapedSequence = (line.find("\n",0) < line.size());
由于\n
中的find
将被转义,这显然不会奏效。如果我尝试(line.find("\\n",0) < line.size());
,它似乎无法改变任何内容
我该怎么办?
答案 0 :(得分:6)
line.find("\n",0)
将返回光标所在位置的子字符串。如果未找到子字符串,则返回string :: npos。 所以不应该与尺寸进行比较。
bool hasEscapedSequence = (line.find("\n") != string::npos);