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',',') -- ========================= ...
随机推荐
- aarch64_p1
PEGTL-devel-1.3.1-2.fc26.aarch64.rpm 2017-02-14 08:00 63K fedora Mirroring Project PackageKit-1.1.6- ...
- 使用pandas把mysql的数据导入MongoDB。
使用pandas把mysql的数据导入MongoDB. 首先说下我的需求,我需要把mysql的70万条数据导入到mongodb并去重, 同时在第二列加入一个url字段,字段的值和第三列的值一样,代码如 ...
- Logback的继承体系
今天碰到一个问题,发现控制台日志输出两遍,搜索得知,这个是由于logback继承体系导致的. logback不仅会继承level,也会继承appender,需要注意的是: <root> & ...
- mysql -> 用户管理&数据类型_04
用户权限,回收权限 数据类型 生产案例
- gbdt和xgboost api
class xgboost.XGBRegressor(max_depth=3, learning_rate=0.1, n_estimators=100, silent=True, objective= ...
- python软件依赖关系
caffe:numpy,scikit-image opencv:numpy
- 利用CE手动破解百度云下载限速!
一步,你需要打开百度云<ignore_js_op> 第二步,你需要用上面附送的工具选择百度云进程<ignore_js_op> 第三点,不多说,看图<ignore_js_o ...
- Salt 与Salt API配置
1.安装 [root@localhost yum.repos.d]# cat /etc/yum.repos.d/salt.repo [saltstack-repo] name=SaltStack re ...
- Linux下安装Zookeeper
Zookeeper是一个协调服务,可以用它来作为配置维护.名字服务.分布式部署: 下面,我来分享一下在Linux下安装Zookeeper的整个步骤,让大家少走弯路. 一.Zookeeper下载 [ro ...
- Bazel
Using Bazel on Windows Google软件构建工具Bazel FAQ