拆分有任意个全角空格分隔的字符串或任意个半角空格分隔的字符串

 用此种方法实现拆分极其简单,但美中不足的是只能同时拆分由一种符号隔开的字符串,不能同时拆分两种及以上符号分隔开的字符串。

程序代码如下

 

  1.         String input;
  2.         char *p,*q;
  3.         input = Edit1->Text.Trim();
  4.     
  5.         p = strtok(input.c_str() , " ") ;
  6.         while(p)
  7.         {
  8.                 
  9.                 Memo1->Lines->Add(p);
  10.                 p = strtok(NULL, " ");
  11.         }
  12.        //此为拆分全角空格分隔开的字符串,将两处全角空格替换成其他的字符就相应地变成拆分由此种符号分隔的字符串 

 

贴出完整代码

 

 

  1. //---------------------------------------------------------------------------
  2. #include <vcl.h>
  3. #pragma hdrstop
  4. #include "Main.h"
  5. //---------------------------------------------------------------------------
  6. #pragma package(smart_init)
  7. #pragma resource "*.dfm"
  8. TForm1 *Form1;
  9. //---------------------------------------------------------------------------
  10. __fastcall TForm1::TForm1(TComponent* Owner)
  11.         : TForm(Owner)
  12. {
  13. }
  14. //---------------------------------------------------------------------------
  15. void __fastcall TForm1::Button1Click(TObject *Sender)
  16. {
  17.         String input;
  18.         char *p,*q;
  19.         input = Edit1->Text.Trim();
  20.         p = strtok(input.c_str() , " ") ;
  21.         while(p)
  22.         {
  23.                 /*
  24.                 q = strtok(p, " ") ;
  25.                 while(q)
  26.                 {
  27.                         Memo1->Lines->Add(p);
  28.                         q = strtok(NULL, " ");
  29.                 }
  30.                 */
  31.                 Memo1->Lines->Add(p);
  32.                 p = strtok(NULL, " ");
  33.                 //此为拆分全角空格分隔开的字符串,将两处全角空格替换成其他的字符就相应地变成拆分由此种符号分隔的字符串
  34.         }
  35. }
  36. //---------------------------------------------------------------------------

测试抓图

 

 

上图为全角空格字符串测试

 

 

 

上图为半角空格字符串测试

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值