实现C++的string字符串拆分函数split

本篇实现C++的string字符串拆分函数split。C++标准库中的string是没有此函数的,不像Java那样方便,但是我们可以尝试自己实现它。

代码:

list<string> split(string str, string separator)
{
    list<string> result;
    int cutAt;
    while ((cutAt = str.find_first_of(separator)) != str.npos)
    {
        // 有可能存在string str = "a,,b,c",求split(str, ",")情况,所以每次都要判断cutAt是否为零
        if (cutAt > 0)
        {
            result.push_back(str.substr(0, cutAt));
        }
        str = str.substr(cutAt + 1);
    }
    if (str.length() > 0)
    {
        result.push_back(str);
    }
    return result;
}
时间: 2024-10-03 17:16:01

实现C++的string字符串拆分函数split的相关文章

php 字符串分割函数split

说明 array split    ( string $pattern   , string $string   [, int $limit  ] ) 本函数返回一个字符串数组,每个单元为   string 经区分大小写的正则表达式   pattern 作为边界分割出的子串.如果设定了   limit,则返回的数组最多包含   limit 个单元,而其中最后一个单元包含了   string 中剩余的所有部分.如果出错,则   split() 返回 FALSE. Example #1 split(

JavaScript中字符串分割函数split用法实例

这篇文章主要介绍了JavaScript中字符串分割函数split用法,实例分析了javascript中split函数操作字符串的技巧,非常具有实用价值,需要的朋友可以参考下 本文实例讲述了JavaScript中字符串分割函数split用法.分享给大家供大家参考.具体如下: 先来看下面这段代码: <script type="text/javascript"> var str="How are you doing today?" document.write

String字符串处理函数

开发习惯常用字符串处理函数梳理:strtr() 转换字符串中特定的字符.substr() 返回字符串的一部分.strstr() 搜索字符串在另一字符串中的首次出现(对大小写敏感)str_replace() 替换字符串中的一些字符.(对大小写敏感)strcmp() 比较两个字符串.(对大小写敏感)strlen() 返回字符串的长度.substr_count() 计算子串在字符串中出现的次数.substr_replace() 把字符串的一部分替换为另一个字符串 implode() 把数组元素组合为一

PHP中String字符串处理函数完整版

文章来源:PHP开发学习门户 地址:http://www.phpthinking.com/archives/602 开发习惯常用字符串处理函数梳理: strtr() 转换字符串中特定的字符. substr() 返回字符串的一部分. strstr() 搜索字符串在另一字符串中的首次出现(对大小写敏感) str_replace() 替换字符串中的一些字符.(对大小写敏感) strcmp() 比较两个字符串.(对大小写敏感) strlen() 返回字符串的长度. substr_count() 计算子串

(转)C++常见问题: 字符串分割函数 split

http://www.cnblogs.com/dfcao/p/cpp-FAQ-split.html C++标准库里面没有字符分割函数split ,这可太不方便了,我已经遇到>3次如何对字符串快速分割这个问题了.列几个常用方法以备不时之需. 方法一: 利用STL自己实现split 函数(常用,简单,直观) 原型: vector<string> split(const string &s, const string &seperator); 输入一个字符串,一个分隔符字符串(

SQL Server自定义字符串分割函数——Split

我相信大部分人都碰到过,处理数据的时候,字段的值是以 ',' (逗号)分隔的形式,所以我也不能避免. 然后我才知道,sql 是没有类似于 C# 和 Javascript 这种分割字符串的方法.( Split ) 所以我自己定义了一个 sql 函数(多声明表值函数),代码如下: 1 USE [Test] 2 GO 3 /****** Object: UserDefinedFunction [dbo].[Split] Script Date: 2017/4/14 23:04:08 ******/ 4

String字符串常用函数

<?php $a[]='a'; $a[]='b'; $a[]='C'; echo "</br>"; $str=''; foreach($a as $k=>$v){ $str.='.'.$v; //结果为 .a.b.C } $str=trim($str,'.'); //去除两边的空格或者指定字符串,去除两边的'.'如果有就去除,没有就不变,输出结果为 a.b.C $str=str_replace('.','-',$str);//搜索指定字符串中的'.'号,用空格替

sqlserver字符串拆分函数

CREATE FUNCTION f_splitSTR(@s varchar(8000), --待分拆的字符串@split varchar(10) --数据分隔符)RETURNS @re TABLE(col varchar(100))ASBEGIN DECLARE @splitlen int SET @splitlen=LEN(@split+'a')-2 WHILE CHARINDEX(@split,@s)>0 BEGIN INSERT @re VALUES(LEFT(@s,CHARINDEX(@

hive函数 -- split 字符串分割函数

hive字符串分割函数 split(str, regex) - Splits str around occurances that match regexTime taken: 0.769 seconds, Fetched: 1 row(s) 返回值为一个数组 a.基本用法: 例1: split('a,b,c,d',',') 得到的结果: ["a","b","c","d"] b.截取字符串中的某个值: 当然,我们也可以指定取结