CString分割字符串实现
这个类封装了CString分割字符串的功能,可以直接使用。
SplitStr.h
#pragma once// CSplitStrclass CSplitStr : public CWnd
{DECLARE_DYNAMIC(CSplitStr)
private://切分的标志符号CString m_sSplitFlag;//连续的切分的标志符号当成一个标志处理BOOL m_bSequenceAsOne;//被切分的文本CString m_sData;
public:CSplitStr();virtual ~CSplitStr();//得到切分好的文本串void GetSplitStrArray(CStringArray &array);//得到被切分的文本CString GetData();//设置被切分的文本void SetData(CString sData);//得到切分参数BOOL GetSequenceAsOne() {return m_bSequenceAsOne;};//设置切分参数void SetSequenceAsOne(BOOL bSequenceAsOne) {m_bSequenceAsOne = bSequenceAsOne;};//得到切分标志CString GetSplitFlag() {return m_sSplitFlag;};//设置切分标志void SetSplitFlag(CString sSplitFlag) {m_sSplitFlag = sSplitFlag;};protected:DECLARE_MESSAGE_MAP()
};
SplitStr.cpp
// SplitStr.cpp : 实现文件
//#include "stdafx.h"
#include "SplitStr.h"// CSplitStrIMPLEMENT_DYNAMIC(CSplitStr, CWnd)CSplitStr::CSplitStr()
{SetData("");SetSequenceAsOne(TRUE);SetSplitFlag(",");
}CSplitStr::~CSplitStr()
{
}BEGIN_MESSAGE_MAP(CSplitStr, CWnd)
END_MESSAGE_MAP()void CSplitStr::SetData( CString sData )
{m_sData = sData;m_sData.TrimLeft();m_sData.TrimRight();
}CString CSplitStr::GetData()
{return m_sData;
}void CSplitStr::GetSplitStrArray( CStringArray &array )
{CString sData = GetData();CString sSplitFlag = GetSplitFlag();if (sData.Right(1) != sSplitFlag) sData +=sSplitFlag;CString sTemp;int pos =-1;while ((pos=sData.Find(sSplitFlag,0)) != -1){sTemp = sData.Left(pos);if (!GetSequenceAsOne()){array.Add(sTemp);}else{if (!sTemp.IsEmpty() && sTemp !="") 连续的分隔符视为单个处理{array.Add(sTemp);}}sData = sData.Right(sData.GetLength() - pos - 1);}
}// CSplitStr 消息处理程序
测试程序:
CSplitStr lsv_Split; CString lsv_TestText = "abc#def#ghi"; CStringArray lav_Array; lsv_Split.SetSplitFlag("#"); lsv_Split.SetSequenceAsOne(TRUE); lsv_Split.SetData(lsv_TestText); lsv_Split.GetSplitStrArray(lav_Array); int i = lav_Array.GetCount(); CString lsv_Result = lav_Array[i-1]; AfxMessageBox(lsv_Result);
本文参考了http://blog.csdn.net/lingxiu0613/article/details/8993662
CString分割字符串实现相关推荐
- 字符串处理分割字符串
**strtok** 分解字符串为一组字符串.s为要分解的字符,delim为分隔符字符(如果传入字符串,则传入的字符串中每个字符均为分割符).首次调用时,s指向要分解的字符串,之后再次调用要把s设成N ...
- 分割字符串的AfxExtractSubString函数
函数原型: BOOL AfxExtractSubString(CString& rString, LPCTSTR lpszFullString, int iSubString, TCHAR c ...
- jquery中如何以逗号分割字符串_百度知道
jquery中如何以逗号分割字符串_百度知道javascript本身就是带split方法的 定义和用法 split() 方法用于把一个字符串分割成字符串数组. 语法 stringObject.spli ...
- c语言以空格分割字符串_C语言: 利用sscanf() 函数分割字符串
头文件:#include sscanf()函数用于从字符串中读取指定格式的数据,其原型如下: int sscanf (char *str, char * format [, argument, ... ...
- python字符串按长度分割_python 按照固定长度分割字符串的方法小结
有如下的一堆mac地址,需要更改成一定格式,如mac='902B345FB021'改为mac='90-2B-34-5F-B0-21'. 借助python脚本,可以轻松实现,原理就是:字符串的按照固定长 ...
- B00009 C语言分割字符串库函数strtok
切割字符串是常用的处理. 这里给出一个使用函数strtok切割字符串的例子. 使用C语言的库函数strtok来切割字符串的好处在于,可以指定任意字符作为分隔符来切割单词.使用该函数,切割字符串的分隔符 ...
- R语言使用str_split函数和str_split_fixed函数将字符串分割(分裂、split)成几个部分:str_split函数使用指定的字符或者字符串分割字符串、str_split_fixed
R语言使用str_split函数和str_split_fixed函数将字符串分割(分裂.split)成几个部分:str_split函数使用指定的字符或者字符串分割字符串.str_split_fixed ...
- 分割字符串_[话俾你知]Python使用正则处理字符串技巧(分割、替换)
当你遇见了一个问题需要使用正则来处理,这个时候你就有了两个问题. 我主业是做图像处理,自然语言处理接触不多,正则表达式的研究并不深入,本文只讲述一些小技巧,如果你对正则表达式比较感兴趣,可以去看看有本 ...
- Struts2 分割字符串标签s:generator
Struts2 分割字符串标签s:generator有些时候会从后台返回一个字符串,可以通过Strut2的标签s:generator进行分割.generator标签,该标签可以将指定字符串按指定分隔符 ...
最新文章
- java中io流实现哪个接口_第55节:Java当中的IO流-时间api(下)-上
- 快手刘霁:AI基础能力决定每个公司AI的迭代和落地效率丨MEET2020
- 一招一式攻克linux(四)
- .NET重构—单元测试重构
- 【Opencv探索】基于OpenCV的“图像拼接特效”(这效果很实用啊)
- JavaFX场景切换代码示例
- 29.变量的生命周期
- GARFIELD@10-21-2004
- [Node.js]001.安装与环境配置
- 程序人生,程序猿要把编程一直学习下去吗?
- 【图像修复】基于matlab GUI三维图像复原【含Matlab源码 963期】
- Python对象与json数据的转换
- linux之mail命令发邮件
- keep T 不是 KG等级_Lifestyle | 做Keep没有动力?一周的健身计划都在这里了!
- DataFrame按某种指定顺序排序
- SEAL开源库源码10
- Symantec赛门铁克支持型SSL服务器证书_网站安全SSL数字证书认证
- css 所有选择器 实例与总结
- replica文件服务器,mongodb replica set 配置高性能多服务器详解
- 满天星java代码6_java实现的满天星效果的方法