首页 > 编程语言 > 详细

C++去掉字符串首尾的 空格 换行 回车

时间:2016-11-02 18:09:52      阅读:785      评论:0      收藏:0      [点我收藏+]
 1 /*
 2 *去掉字符串首尾的 \x20 \r \n 字符
 3 */
 4 void TrimSpace(char* str)
 5 {
 6   char *start = str - 1;
 7     char *end = str;
 8     char *p = str;
 9     while(*p)
10     {
11         switch(*p)
12         {
13         case  :
14         case \r:
15         case \n:
16             {
17                 if(start + 1==p)
18                     start = p;
19             }
20             break;
21         default:
22             break;
23         }
24         ++p;
25     }
26     //现在来到了字符串的尾部 反向向前
27     --p;
28     ++start;
29     if(*start == 0)
30     {
31         //已经到字符串的末尾了
32         *str = 0 ;
33         return;
34     }
35     end = p + 1;
36     while(p > start)
37     {
38         switch(*p)
39         {
40         case  :
41         case \r:
42         case \n:
43             {
44                 if(end - 1 == p)
45                     end = p;
46             }
47             break;
48         default:
49             break;
50         }
51         --p;
52     }
53     memmove(str,start,end-start);
54     *(str + (int)end - (int)start) = 0;
55 }

转载:https://www.oschina.net/code/snippet_196111_15959

 

2.过滤掉CString字符串中的换行和回车符号

CString str("abc\r\nsfsdfasfd");
str.Replace("\r", "");

str.Replace("\n", "");

C++去掉字符串首尾的 空格 换行 回车

原文:http://www.cnblogs.com/chechen/p/6023403.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!