Visual c++ 如何查找和替换输入字符?

Visual c++ 如何查找和替换输入字符?,visual-c++,char,Visual C++,Char,如何查找和替换文本文件中的“回车”字符?这是我的密码: string searchString( "\r" ); // <------- how to look for ENTER chars? string replaceString( "XXXX" ); assert( searchString != replaceString ); string::size_type pos = 0, pos3 =0; while ( (pos = test.find(searchStri

如何查找和替换文本文件中的“回车”字符?这是我的密码:

string searchString( "\r" );   // <------- how to look for ENTER chars?
string replaceString( "XXXX" );

assert( searchString != replaceString );

string::size_type pos = 0, pos3 =0;

while ( (pos = test.find(searchString, pos)) != string::npos ) {
    test.replace( pos, searchString.size(), replaceString );
            pos++; }

字符串搜索字符串(“\r”);// 搜索Windows格式的
\r\n
,搜索Linux/Unix格式的
\n
,搜索文本文件中的Mac格式。

搜索Windows格式的
\r\n
,搜索Linux/Unix格式的
\n
,搜索文本文件中的Mac格式。

取决于您的目标

如果希望所有换行符看起来相同。根据链接文章,至少有五种模式可供选择:

  • 窗口(CR-LF)
  • Mac(CR)
  • Unix(LF)
  • Unicode行分隔符
  • Unicode段落分隔符

我认为寻找字节模式(将其视为二进制文件而不是文本文件)将是一条可行之路。

取决于您的目标

如果希望所有换行符看起来相同。根据链接文章,至少有五种模式可供选择:

  • 窗口(CR-LF)
  • Mac(CR)
  • Unix(LF)
  • Unicode行分隔符
  • Unicode段落分隔符
我认为寻找字节模式(将其视为二进制文件而不是文本文件)将是一种方法。

输入字符是“\n”,但在Windows中,“\r\n”,旧Mac“\r”。 对于混合换行符:regexp/(?输入字符为“\n”,但在Windows中为“\r\n”,旧Mac“\r”。
对于混合换行符:regexp/(?您所拥有的有什么问题?george,它不知何故没有检测到输入字符。它可以工作!谢谢大家:)您所拥有的有什么问题?george,它不知何故没有检测到输入字符。它可以工作!谢谢大家:)RegEx?OP在哪里要求的?@George,你可以使用正则表达式查找和替换。OP是否要求查找并替换.RegEx?OP在哪里要求的?@George,你可以使用正则表达式查找和替换。OP确实要求查找和替换。