zoukankan      html  css  js  c++  java
  • 函数字符串C++的String类的字符串分割实现(效果等于Java的String类的split函数)

    改章节是一篇关于函数字符串的帖子

        功能需求,输入一个字符串“1-2-3”切割出“1”、“2”、“3”。在Java下直接用String的split函数就可以了。c++下String没有直接提供这个函数,须要自己写。

         

        网上给出的解决方案是这里的三种方法。但我是通过JNI访问的,在里面用这些vector可能不中,自己封装了个,仅供参考:

        每日一道理
    整个世界,因为有了阳光,城市有了生机;细小心灵,因为有了阳光,内心有了舒畅。明媚的金黄色,树丛间小影成像在叶片上泛有的点点破碎似的金灿,海面上直射反映留有的随波浪层层翻滚的碎片,为这大自然创造了美景,惹人醉的温馨之感,浓浓暖意中夹杂着的明朗与柔情,让雨过天晴后久违阳光的心灵重新得到了滋润!
    String recogScop = "01-02-03";
        cout<<recogScop<<endl;
        int size = recogScop.size();
        int pos = 0;
        string result[20] ;
    
        for(int i=0, j=0; i<size; i++,j++ )
        {
            pos = recogScop.find("-", i);
    
            if(pos == -1)
            {
               String subEnd = recogScop.substr(i, size - i); //最后一个字符串
                result[j] = subEnd;
                break;
            }
            if(pos >0)
            {
                String sub = recogScop.substr(i, pos-i);
                result[j] = sub;
                i = pos;
            }
        }
    
        for(int i=0; result[i] != ""; i++)
            cout<<result[i]<<endl;

        
     

         

         注意下面find的结果pos大于0,表示可以找到“-”分隔符,如果失败,也就是最后一个分隔符,pos会即是-1.

    文章结束给大家分享下程序员的一些笑话语录: 姿势要丰富,经常上百度!

    --------------------------------- 原创文章 By
    java和分割
    ---------------------------------

  • 相关阅读:
    Linux的网络配置
    Linux进程
    我需要的电脑配置
    spring注解配置
    spring中集合的配置
    getProperty()方法的参数和用途
    树的遍历
    单词变换
    最短路径dijkstra算法
    文件路径
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3111187.html
Copyright © 2011-2022 走看看