`

C++实现的split函数

阅读更多
/*
* Split.cpp
*
*  Created on: 2008-10-28
*      Author: root
*/
/****************************************
* split实现
****************************************/
#include <iostream>
#include <string>
#include <vector>
using namespace std;

vector<string> split(const string& src, string delimit, string null_subst = "")
{
typedef basic_string<char>::size_type s_t;
static const s_t npos = -1;
if (src.empty() || delimit.empty())
{
  throw "split:empty string\0";
}
vector<string> v;
s_t deli_len = delimit.size();
s_t index = npos, last_search_position = 0;
while ((index = src.find(delimit, last_search_position)) != npos)
{
  if (index == last_search_position)
  {
   v.push_back(null_subst);
  }
  else
  {
   v.push_back(src.substr(last_search_position, index
     - last_search_position));
  }
  last_search_position = index + deli_len;
}
string last_one = src.substr(last_search_position);
v.push_back(last_one.empty() ? null_subst : last_one);
return v;
}
int main(int argc, char **argv)
{
try
{
  string s = "abcd efg higk lm";
  string del = " ";
  vector<string> v3 = split(s, del);
  cout << "----------v3:" << endl;
  for ( unsigned int i = 0; i < v3.size(); i++)
  {
   cout << v3.c_str() << endl;
  }
} catch (char *s)
{
  cout << s << endl;
}
return 0;
} 

 

分享到:
评论

相关推荐

    c++split函数

    由于c++不含内置分割split,此文档包含c++spilt函数,和输出

    一个Split函数用法

    Split函数用法 初学者的疑惑,怎样式用

    c++builder 中的split

    .net技术中split函数应用广泛,CB中却没有,为了解决有这方面烦恼的朋友的问题,提供个小小函数。 有了它,你的问题将迎刃而解。

    VC写的Split函数实现类

    用类实现Split函数,将字符串按分隔符分成数组。采用纯C与动态内存分配方法编写,原使用与Linux C下,现采用类的方式实现,使用更加方便,使用方法如下: CCSplit oField char *Field; int FieldCount=oField....

    纯C++ 字符串处理函数大全源码

    自己封装的纯C++的字符串处理函数大全,像特别好用的 字符串切分 Split函数代码均已经过测试,并有接口说明,可方便调用。

    C++分割字符串的实现

    C++分割字符串的实现 C++ split函数的实现方法

    如何在c++中实现字符串分割函数split详解

    主要给大家介绍了关于如何在c++中实现字符串分割函数split的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用c++具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧

    C/C++的split分隔字符串

    标准C/C++编写的字符串分隔函数,可以设置分隔字符串,解出字符串存到vector里面。有需要的可以下载

    决策树实现iris鸢尾花分类-C++

    我们还实现了calculate_entropy函数来计算数据集的熵,find_best_split函数来查找最佳划分点,get_majority_label函数来获取数据集中出现最多的标签,build_decision_tree函数来递归地构建决策树,predict函数来预测...

    c++string类的实现

    3) 有些函数返回的是MyString& 、Char& 等(引用),MyString、Char 等(传值)这得看你返回的对象是函数的局部变量还是全局变量(或者类当前对象成员变量);前者只能返回一个MyString、Char 等;后者强烈建议返回...

    类C语言的脚本解析执行(使用C++语言编写)20080625

    本组建主要用于在程序中解析预先编写的类C... split: replace:字符串替换函数 printf: 这些函数基本与同名c函数相同 4、可预先编写一组脚本文件,编译时为每个文件指定ID,供调用时选择 5、字符串可直接赋值及相加

    详解C++的String类的字符串分割实现

    在Java下直接用String的split函数就可以了。c++下String没有直接提供这个函数,需要自己写。 网上给出的解决方案是这里的三种方法。但我是通过JNI访问的,在里面用这些vector可能不中,自己封装了个,仅供参考: ...

    C++常用字符串分割方法实例汇总

    本文实例汇总了C++常用字符串分割方法,分享给大家供大家参考。具体分析如下: 我们在编程的时候经常会碰到字符串分割的问题,这里总结下,也方便我们以后查询使用。...//借助strtok实现split #include &lt;

    split函数

    一个代码较少的字符串截取函数 很通用的

    Visual C++2010开发权威指南(共三部分).part1.rar

    5.25 Visual C++ 2010 Split Button控件简介与开发 261 5.26 Visual C++ 2010 Network Address控件简介与开发 262 5.27 Visual C++ 2010 Check Box控件简介与开发 262 5.28 Visual C++ 2010 Radio Button控件简介与...

    Visual C++2012 开发权威指南

    Metro新特性、Visual Studio 2012九大新功能,Visual C++ 2012语言新特性,Visual C++ 2012的异步编程与网络编程,实现并行编程充分利用多核处理能力,基于Visual C++充分使用GPU的计算能力,使用Lambda、函数对象和...

    C++的字符串分割函数的使用详解

    经常碰到字符串分割的问题,这里总结下,也方便我以后使用。 一、用strtok函数进行字符串分割 原型: char *strtok(char *str, const char *delim);...//借助strtok实现split #include #include int main() { char

    字符串的处理与函数的封装

    《字符串的处理与函数的封装》课程设计,可执行性强,代码简单易懂,有注释

Global site tag (gtag.js) - Google Analytics