精华内容
下载资源
问答
  • C++ string 分割字符串

    千次阅读 2016-10-23 18:56:21
    少废话,直接看实例#include using namespace std;std::vector<std::string> splitString(const string &strSrc, const string &pattern) { vector<string > resultstr; if (strSrc == "") return re

    少废话,直接看实例

    #include <vector>
    using namespace std;
    
    std::vector<std::string> splitString(const string &strSrc, const string &pattern)
    {
        vector<string > resultstr;
        if (strSrc == "")
            return resultstr;
    
        // 添加在字符串最后,可以截取最后一段数据
        std::string strcom = strSrc + pattern;
        auto pos = strSrc.find(pattern);
        auto len = strcom.size();
    
        //
        while (pos != std::string::npos)
        {
            std::string coStr = strcom.substr(0, pos);
            resultstr.push_back(coStr);
    
            strcom = strcom.substr(pos + pattern.size(), len);
            pos = strcom.find(pattern);
        }
    
        return resultstr;
    }
    int main(int argc, const char * argv[])
    {
        std::string str = "Hello@World";
    
        for (auto itor : splitString(str, "@"))
        {
            printf(" -- %s \n", itor.c_str());
        }
    }

    在这段代码中使用到string中的 find() 和 substr()
    find函数原型,详细的API —— find链接

    string (1)  
    size_t find (const string& str, size_t pos = 0) const;
    
    c-string (2)    
    size_t find (const char* s, size_t pos = 0) const;
    
    buffer (3)  
    size_t find (const char* s, size_t pos, size_t n) const;
    
    character (4)   
    size_t find (char c, size_t pos = 0) const;

    substr 函数原型,详细的 API链接

    string substr (size_t pos = 0, size_t len = npos) const;
    展开全文
  • 标准std::string分割字符串split

    万次阅读 2015-01-30 15:44:49
    在C#中分割字符串有现成的函数Split可供调用,但是标准C++好像却没有现成的,还好根据STL地强大功能,可以很方便地自己实现出来,下面就是我写的分割函数: std::vector splitString(std::string srcStr, std::...

    在C#中分割字符串有现成的函数Split可供调用,但是标准C++好像却没有现成的,还好根据STL地强大功能,可以很方便地自己实现出来,下面就是我写的分割函数:

    std::vector<std::string> splitString(std::string srcStr, std::string delimStr,bool repeatedCharIgnored)
    {
        std::vector<std::string> resultStringVector;
        std::replace_if(srcStr.begin(), srcStr.end(), [&](const char& c){if(delimStr.find(c)!=std::string::npos){return true;}else{return false;}}/*pred*/, delimStr.at(0));//将出现的所有分隔符都替换成为一个相同的字符(分隔符字符串的第一个)
        size_t pos=srcStr.find(delimStr.at(0));
        std::string addedString="";
        while (pos!=std::string::npos) {
            addedString=srcStr.substr(0,pos);
            if (!addedString.empty()||!repeatedCharIgnored) {
                resultStringVector.push_back(addedString);
            }
            srcStr.erase(srcStr.begin(), srcStr.begin()+pos+1);
            pos=srcStr.find(delimStr.at(0));
        }
        addedString=srcStr;
        if (!addedString.empty()||!repeatedCharIgnored) {
            resultStringVector.push_back(addedString);
        }
        return resultStringVector;
    }

    其中,srcStr是待分割地字符串,delimStr是分隔符组成的字符串,可以有多个分隔符,最后的repeatedCharIgnored是指是否忽视待分割字符串中的重复分隔符,也就是说如果忽视,那么多个连续分隔符将被视为一个分隔符,这样最后得到的分割结果中是不会出现空字符串的,否则,分割结果中会出现空字符串。

    splitString("what tatoo"," t",true)的返回结果为{"wha","a","oo"}

    而splitString("what tatoo"," t",false)的返回结果为{"wha","","","a","oo"}


    此算法受某位同学启发,特此感谢。

    展开全文
  • C++ string分割字符串并去除空格

    千次阅读 2011-10-27 16:23:47
    // Txt.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include #include #include #include ...vector splitEx(const string& src, string sep) { vector strs; int seplen = s
    // Txt.cpp : 定义控制台应用程序的入口点。
    //
    #include "stdafx.h"
    #include <string>
    #include <iostream>
    #include <vector>
    #include <fstream>
    #include <tchar.h>
    using namespace std;
    vector<string> splitEx(const string& src,	string sep)
    {
    	vector<string> strs;
    
    	int seplen = sep.size();//分割字符串的长度,这样就可以支持如“,,”多字符串的分隔符
    	int lastpos= 0,	index = -1;
    	while (-1 != (index = src.find(sep,lastpos)))
    	{ 
    		strs.push_back(src.substr(lastpos,index - lastpos));
    		lastpos= index + seplen;
    	}
    	string laststr = src.substr(lastpos);//截取最后一个分隔符后的内容
    	if (!laststr.empty())
    		strs.push_back(laststr);//如果最后一个分隔符后还有内容就入队
    	return strs;
    }
    
    string& trim(string &str)
    {
    	if (str.empty())
    	{
    		return str;
    	}
    	str.erase(0,str.find_first_not_of(" ")); //去除左边空格
    	str.erase(str.find_last_not_of(" ") + 1);//去除右边空格
    	return str;
    }
    
    int _tmain(int argc, _TCHAR* argv[])
    {
    	string line = "F11      |                    |Thunder                       |Thunder                       |C:\\Program\ Files\\Thunder\ Network\\Thunder\\Program\\Thunder.exe";
    	string del = "|";
    	vector<string> strs = splitEx(line, del);
    	for ( unsigned int i = 0; i < strs.size(); i++)
    	{
    		trim(strs[i]);
    		cout << "[" << strs[i].c_str() << "] ";
    	}
    	system("pause");
    	return 0;
    } 


    展开全文
  • java String中文字符串分割成一定长度的字符串数组 /** * 几个字一组 变量控制 大于零有意义 */ int num = 6; /** * 待操作的字符串 */ String str = "一二三四五六七一二三四五六七一二三四五六七一二三...

    java String中文字符串分割成一定长度的字符串数组

    /**
     * 几个字一组 变量控制 大于零有意义
     */
    int num = 6;
    /**
     * 待操作的字符串
     */
    String str = "一二三四五六七一二三四五六七一二三四五六七一二三四五六七一二三四五六七一二三四五六七一二三四五六七一二三四五六七";
    /**
     * 可以分为几行
     */
    int lines = (str.length() + (num - 1)) / num;
    /**
     * 中间行
     */
    int center = ((lines + 1) / 2);
    System.out.println("长度:" + str.length());
    System.out.println("可以分为:" + lines + "行");
    /**
     * 转成数组
     */
    char[] chars = str.toCharArray();
    /**
     * 计数
     */
    int j = 0;
    /**
     * 开始加工
     */
    for (int i = 0; i < chars.length; i += num) {
        j++;
        System.out.print("中间行=" + center + "当前行:" + j);
        String s1 = String.valueOf(chars[i]);
        for (int k = 1; k <= num - 1; k++) {
            if (i + k < chars.length)
                s1 = s1.concat(String.valueOf(chars[i + k]));
        }
        //标示中间行
        if (j == center) {
            System.out.print("--->");
        }
        //打印结果 或者用String[] 来接 在循环外返回一个数组出去
        System.out.println(s1);
    
    }

    展开全文
  • string拆分字符串

    2010-07-02 11:29:52
    string拆分字符串string拆分字符串string拆分字符串
  • string 实现字符串分割

    2019-04-23 20:31:21
    都说C++处理字符串,文本很乏力,有了STL还是方便很多;不熟悉的还得现查,知识还是得多积累,多分享,先从记录一个字符串分隔开始 1.string初始化 string str(“kevin is a handsome boy~”); // str1初始化为 ...
  • stringstream切割字符串

    2019-01-27 14:39:34
    这样就实现了字符串的空格切割。 #include&lt;bits/stdc++.h&gt; #include&lt;sstream&gt; //头文件 using namespace std; int main(){ string str="nice to meet you"; string...
  • 初步实现此功能,未进行效率测试,共享给有需要的人: /// /// 字符串分割split /// /// 分割字符 串 /// 分割字符 /// public string[] stringExtSplit(string str, string strSplit) { ArrayList arrayList = ...
  • C++ string字符串分割

    万次阅读 2018-05-27 21:42:04
    假设str为待分割字符串,pattern为分割的标记字符串,如下:vector&lt;string&gt; split(const string&amp; str, const string&amp; pattern) { vector&lt;string&gt; ret; if(pattern...
  • &lt;string name="callblocker_search"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;.../string&...”表示一个英文字符,汉子就加两个,就行了。欢迎批评指正。...
  • 1. split 按照指定的字符分割,如按照";"或 "/"等分割 QString str = "hello,world" QStringList list = str.split(","); QString a = list[0]; //a = "hello" QString b = list[1]; //b = "world" QString str2 = ...
  • c++ string split分割字符串

    千次阅读 2017-12-03 16:19:30
    c++原生好像没有split分割字符串内置函数 #include #include #include #include #include #include #include #include using namespace std; vector split(string &str,string sp){ vector split; //...
  • String 字符串切割

    千次阅读 2019-09-04 15:59:13
    使用split()进行分割字符串,注意切割按照正则切割,如遇到特殊字符要+\\ package String; public class splitString { public static void main(String[] args) { //字符串替换 String str = "HelloWord"; ...
  • string字符串分割

    2016-06-15 09:46:17
    字符串分割
  • php根据字符串分割字符串How to split a string by string in PHP? For example, 如何在PHP中按字符串分割 字符串 ? 例如, "a string separated byspace" => ["a", "string", "separated", "by", "space"] and...
  • 一、拼接以 “逗号” 隔开的String字符串 如果需要对字符串进行频繁拼接的话,使用StringBuffer或者StringBuilder StringBuffer:【字符串缓冲器】是线程安全的,效率低 StringBuilder:【字符串操作类】是线程不安全...
  • c++ stringstream分割字符串

    千次阅读 2018-04-24 19:42:54
    我们都知道stringstream可以方便的进行数据类型转换,其实还有一个妙用就是按空格分割字符串。#include&lt;iostream&gt; #include&lt;cstring&gt; #include&lt;cstdio&gt; #include&lt;...
  • String字符串切割

    万次阅读 2018-10-09 08:16:12
    字符串的前i个字符 str=str.Substring(0,i); 去掉字符串的前i个字符 str=str.Substring(i); 从右边开始取i个字符 str=str.Substring(str.Length-i); 从右边开始去掉i个字符 str=str.Substring(0,str...
  • string字符串的转换

    千次阅读 2019-10-03 14:55:38
    一、从文件中读取字符串 即是getline的用法。 1、在中的getline()函数有两种重载形式 stream& getline (char* s, streamsize n ); istream& getline (char* s, streamsize n, char delim ); 2、 在中的...
  • lua string字符串 用法详解

    千次阅读 2017-10-13 11:27:41
    注:string库中所有的函数都不会直接修改原字符串,只返回新结果。 加[,]的参数指缺省,即可有可无, string.len (s) 接收一个字符串,返回其长度。 空串 “” 的长度为 0 。 内嵌零也统计在内 string.len("abc") -- ...
  • c++ 按分割切割string字符串

    千次阅读 2017-10-27 16:03:02
    /*************************************************** 函数名称: SplitString* 功能描述: 按切割符截取字符串* 参 数: const string &amp; srcStr源字符串* 参 数: vector&lt;string&gt; &...
  • 先将一组数字组装成String字符串,然后接受通过split()方法分割: import java.util.ArrayList; import java.util.List; public class Text { public static void main(String[] args) { String ids = "1,2,3,4,...
  • Delphi : 分割字符串string,取出截取中间字符串  (2012-05-17 09:50:26) 标签:  it 分类: 软件_Software Function FindStr(BegSprStr,EdSpStr:String;var Source:String):...
  • 2、String类型字符串利用子字符串对其切割方法 相信都用String对象的Split方法,一般利用这种方法对字符串进行切割。但是实际上,如果需要对一串字符串(如:aaa_bbbb_c_ddddd,其中a、b、c、d的位数不定,但是“_...
  • Lua string split分割字符串

    万次阅读 2015-01-27 11:07:40
    -- 分隔字符串 function string:split(sep) local sep, fields = sep or "\t", {} local pattern = string.format("([^%s]+)", sep) self:gsub(pattern, function(c) fields[#fields+1] = c end) return
  •  split()就是将一个字符串分裂成多个字符串组成的列表。 split()当不带参数时以空格进行分割,当代参数时,以该参数进行分割。 //---当不带参数时 example: st0= ' song huan gong 
  • java String字符串及正则表达式

    千次阅读 2018-03-30 11:33:28
    创建字符串public class Test { private static final String ABC = "abc"; public static void main(String[] args) { String s1 = "abc"; String s2 = new String("abc"); ...
  • Swift4 String截取字符串

    千次阅读 2019-03-08 14:19:52
    // 1 截取字符串的第一种方式 // prefix 截取前3个字符串 var str2 = str1.prefix(3); print(str2); // suffix 截取后3个字符串 var str3 = str1.suffix(3); print(str3); // 2 截取一个范围的字符串 //...
  • String split分割字符串问题

    千次阅读 2010-08-06 14:29:00
    在使用String.split方法分隔字符串时,分隔符如果用到一些特殊字符,可能会得不到我们预期的结果。 <br /> 我们看jdk doc中说明 public String[] split(String regex) Splits this...
  • stringstream字符串分割与类型转换

    万次阅读 2016-09-11 09:59:49
    一、string string 是 C++ 提供的字串型態,和 C 的字串相比,除了有不限长度的优点外,还有其他许多方便的功能。要使用 string, 必須先加入这一行: #include 接下來要宣告一个字串变量,可以写成: ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 231,300
精华内容 92,520
关键字:

string切割字符串