VC/MFC分割字符串(SplitString)返回CStringArray
引自:http://bbs.csdn.net/topics/60321228
原版:
CStringArray* SplitString(CString string, char pattern)
{
CStringArray* strArray = new CStringArray();
CString strTemp;
char c;
for(int i=0;i<string.GetLength();i++)
{
c=string[i];
if(c==pattern)
{
strArray->Add(strTemp);
strTemp="";
}
else
{
strTemp+=c;
}
}
strArray->Add(strTemp);
return strArray;
}
修改版(以单个字符分割)
CStringArray* SplitString(CString string, char pattern)
{
CStringArray* strArray = new CStringArray();
CString strTemp;
strTemp = string;
int iPos = 0;
while(iPos != -1)
{
iPos = strTemp.Find(pattern);
if(iPos == -1)
{
break;
}
strArray->Add(strTemp.Left(iPos));
strTemp = strTemp.Mid(iPos+1, strTemp.GetLength());
}
strArray->Add(strTemp);
return strArray;
}
修改版2(以多个字符分割)
CStringArray* SplitString(CString string, char pattern[])
{
int nPattern = strlen(pattern);
CStringArray* strArray = new CStringArray();
CString strTemp;
char c;
BOOL bFind = FALSE;
for(int i=0; i<string.GetLength(); i++)
{
c = string[i];
for(int j=0; j<nPattern; j++)
{
if(c == pattern[j])
{
if(strTemp != "")
{
strArray->Add(strTemp);
}
bFind = TRUE;
break;
}
bFind = FALSE;
}
if(bFind)
{
strTemp = "";
}
else
{
strTemp += c;
}
}
if(strTemp != "")
{
strArray->Add(strTemp);
}
return strArray;
}
使用:
char s[] = {' ', ',', '\0'};
CStringArray strPolygon = *SplitString(strTemp, s);
VC/MFC分割字符串(SplitString)返回CStringArray的更多相关文章
- Chromium base库分割字符串SplitString
前一段时间在工作过程中遇到一个场景需要将http response中的request header中的cookie字段取出并进行解析,但是手头没有解析cookie的工具类,同时cookie的表现就是个 ...
- Autoit实现分割字符串,循环输出元素
#include <MsgBoxConstants.au3> Local $aDays = StringSplit("Mon,Tues,Wed,Thur,Fri,Sat,Sun& ...
- SQL Server中自定义函数:用指定的分隔符号分割字符串
微软SQL Server数据库中包含了很多内置的函数,入下图: 它们用于处理日期.数学.元数据.字符串等. 其中最为常用的就是处理字符串,里面包含了CharIndex()等函数,非常方便使用. 但是对 ...
- 实现SQL Server中的切割字符串SplitString函数,返回Table
有时我们要用到批量操作时都会对字符串进行拆分,可是SQL Server中却没有自带Split函数,所以要自己来实现了. -- ===================================== ...
- Lua 用指定字符或字符串分割输入字符串,返回包含分割结果的数组
// 用指定字符或字符串分割输入字符串,返回包含分割结果的数组 // @function [parent=#string] split // @param string input 输入字符串 // ...
- UDF_表值函数与标量函数的区别_分割字符串成单个的字符并返回表(插入到表中)
UDF_区别_分割字符串成单个的字符并返回表(插入到表中) /* SQL表值函数和标量值函数的区别 实验环境:SQL Server 2014,参考maomao365有改编 在sqlserver中存储过 ...
- 利用MySQL存储过程分割字符串
(转)http://tec.5lulu.com/detail/104krn1e6p2w78d77.html 现有一段字符串,如apple,banana,orange,pears,grape,要把它按照 ...
- 用VC++MFC做文本编辑器(单文档模式)
用VC++MFC做文本编辑器(单文档模式) 原来做过一个用对话框实现的文本编辑器,其实用MFC模板里面的单文档模板也可以做,甚至更加方便,适合入门级的爱好者试试,现介绍方法如下: < xmlna ...
- Sql Server分割字符串函数
-- Description: 分割字符串函数 -- SELECT * FROM dbo.Split('a,b,c,d,e,f,g',',') -- ========================= ...
随机推荐
- imperva命令行查看流量值大小
watch -d -n 1 /proc/hades/status echo clear > /proc/hades/status //清除这些记录
- 如何禁止Linux内核的-O2编译选项【转】
转自:http://blog.csdn.net/larryliuqing/article/details/8674274 http://lenky.info/2013/03/10/%E5%A6%82% ...
- aarch64_c1
CBFlib-0.9.5.15-3.fc26.aarch64.rpm 2017-02-06 06:55 393K fedora Mirroring Project CBFlib-devel-0.9.5 ...
- inspect的使用
# -*- coding: utf-8 -*- # @Time : 2018/9/11 10:29 # @Author : cxa # @File : inspecttest.py # @Softwa ...
- 一、springcloud服务注册、发现、调用(consul/eureka)
1.Spring Cloud简介 Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中的配置管理.服务发现.断路器.智能路由.微代理.控制总线.全 ...
- Linux下实现多播(组播)
单播只能发送给一个接收方,但是当给多个接收者发送时,不仅仅耗费流量,而且耗费时间,总流量=每个接收者的流量*接受者. 广播方式是发送给所有的主机,广播的坏处是会造成信息污染,大量的信息会占用网络带宽. ...
- java 添加一组元素
在java包中的Arrays和Collection类中都有很多实用方法,可以在一个Collection中添加一组元素,Array.asList()方法接受一个数组或是一个用逗号分隔的元素列表(使用可变 ...
- SQL2008关于权限的解释
在SQL2008中我自己创建的一个登录名,可是那个登录名只可以用来登录,对数据库的操作什么都不能,连读取数据库都不可以.因为权限不够,只要把登录名的属性打开点击“服务器角色”,把public和sysa ...
- gtk+学习笔记(四)
今天看了下单选按钮的设置,实现起来还是挺简单的,就是自己太不熟练 radio=gtk_radio_button_new_with_label(NULL,"a"); //第一次创建单 ...
- day6 SYS模块
SYS模块 用于提供对Python解释器相关的操作: (1)sys.argv 命令行参数List,第一个元素是程序本身路径 >>> sys.argv [' ...