如何查找和替换文本文件中的“输入”字符?这是我的代码:
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++; }
答案 0 :(得分:1)
搜索\r\n
获取Windows格式,\n
获取Linux / Unix格式,\r
获取Mac格式文本文件。
答案 1 :(得分:1)
取决于您的目标。
如果您希望所有换行符看起来都一样,you'd better be thorough。根据链接的文章,至少有五种模式需要寻找:
我认为寻找字节模式(将其视为二进制文件而不是文本文件)是可行的方法。
答案 2 :(得分:1)
输入字符为“\ n”,但在Windows中,“\ r \ n”,旧Mac“\ r”。 对于混合换行:regexp /(?&lt; [^ \ r \ n])(?:\ r | \ n | \ r \ n)(?= [^ \ r \ n])/