您的位置:程序门 -> vc/mfc -> 基础类



如何删除字符串里面所有的\r\n


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


如何删除字符串里面所有的\r\n[已结贴,结贴人:yzs001]
发表于:2007-06-03 07:26:52 楼主
如何删除字符串里面所有的\r\n
发表于:2007-06-03 08:36:281楼 得分:10
cstring   str   =   "12312esgsfgs\r\ntfvsc ";
str.remove( "\r\n ");
str.replace( "\r\n ", " ");
第一个不行   就用第二个好了
发表于:2007-06-03 08:37:312楼 得分:0
如果不是cstring的   只是个char*

那就判断如果遇到\r和\n   指针直接++   跳过就好了
发表于:2007-06-03 08:50:433楼 得分:5
直接用str.replace( "\r\n ", " ");就可以。
如果是字符数组,那么借助一个中间变量cstring   str;
也可以实现。
二楼的思想也可以,定义一个字符数组,一个字符一个字符的对拷,
遇到\r\n直接跳过,进行下一步。
发表于:2007-06-03 10:13:564楼 得分:0
是不是还得循环删除呀
里面也可能有多个换行呀
发表于:2007-06-03 10:30:265楼 得分:15
char   *   removecrlf(char   *psz)
{
char   *s=psz;
char   *d=s;
while((*d=*s))
{
s++;
if(*d   ==   '\r '   ¦ ¦   *d   ==   '\n ')   continue;
d++;
}
*d= '\0 ';
return   psz;
}
发表于:2007-06-03 10:32:426楼 得分:0

一个简单的思路就是:

依次读取每个字符,放入另一个字符数组中,如果遇到不需要的字符,不做处理。

这样,循环一次就完成了。


快速检索

最新资讯
热门点击