caoweichen520
caoweichen520
2018-06-29 12:41
采纳率: 45.5%
浏览 565
已采纳

字符串截取的问题?java

ORC|NW|487722|01E201806-2800042|628116|2|0|||20180628171215|||ADMIN^樊翠翠|||||||||儿科急诊门诊^^1300314||||||||A|||中心药房^^1401003
TQ1|1||1&每日一次|||4.0^&1|201806281000
RXO|397F^钠钾镁钙葡萄糖注射液^^500ml/袋|1||ml||8^输液单||||||||||||||0^否||3^滴/分钟

我想根据ORC 取第n个|后面的值 java里有这样的方法吗?
比如我去ORC第4个|后面的就是628116
大神们请求帮助

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

7条回答 默认 最新

  • weixin_44830282
    小哥哥有糖吃 2019-03-25 15:34
    已采纳

    public static void main(String[] args) {
    // TODO Auto-generated method stub

    String s="ORC|NW|487722|01E201806-2800042|628116|2|0|||20180628171215|||ADMIN^樊翠翠|||||||||儿科急诊门诊^^1300314";
    System.out.print(searchstr(s,"ORC",4));

    }
    public static String searchstr(String str,String strcmp,int strindex){
    String[] strArray=str.split("|");

    String ORC = strArray.get(0);
    String NW = strArray.get(1);
    String 487722 = strArray.get(2);
    String 01E201806-2800042 = strArray.get(3);
    String 628116 = strArray.get(4);
    }

    }

    如果这个字符串规则不变的话这样取值是可以的,完美解决望采纳

    点赞 评论
  • bondw
    bondw 2018-06-29 13:05

    tring[] aa = "ORC|NW|487722|01E201806-2800042|628116|2|0|||20180628171215|||ADMIN^樊翠翠|||||||||儿科急诊门诊^^1300314||||||||A|||中心药房^^1401003".split("|");
    string aaa=aa[n]//i为你要取的个数

    点赞 评论
  • elebat
    elebat 2018-06-29 13:20

    public class test {

    public test() {
        // TODO Auto-generated constructor stub
    }
    
    public static void main(String[] args) {
        // TODO Auto-generated method stub
    
        String s="ORC|NW|487722|01E201806-2800042|628116|2|0|||20180628171215|||ADMIN^樊翠翠|||||||||儿科急诊门诊^^1300314";
        System.out.print(searchstr(s,"ORC",4));
    
    }
    public static String searchstr(String str,String strcmp,int strindex)
    {
        String[] strArray=str.split("\\|");
        int i=0;
        for(i=0;i<strArray.length;i++)
        {
            if(strArray[i].equals(strcmp)) 
            {
            return strArray[i+strindex];
            }
        }
        return "原字符串不符合条件";
    }
    

    }

    点赞 评论
  • elebat
    elebat 2018-06-29 13:25

    package myhello;

    public class test {

    public test() {
        // TODO Auto-generated constructor stub
    }
    
    public static void main(String[] args) {
        // TODO Auto-generated method stub
    
        String s="ORC|NW|487722|01E201806-2800042|628116|2|0|||20180628171215|||ADMIN^樊翠翠|||||||||儿科急诊门诊^^1300314";
        System.out.print(searchstr(s,"ORC",4));
    
    }
    public static String searchstr(String str,String strcmp,int strindex)
    {
        String[] strArray=str.split("\\|");
        int i=0;
        for(i=0;i<strArray.length;i++)
        {
            if(strArray[i].equals(strcmp)) 
            {
                if(i+strindex<strArray.length)
                {
                    return strArray[i+strindex];
                }
                else
                {
                    return "查找到字符串,但是没有符合该位置的结果";
                }
            }
        }
        return "原字符串不符合条件";
    }
    

    }

    点赞 评论
  • u014389693
    疾风雷颖 2018-06-30 00:59

    public class Test {
    public static void main(String[] args) {
    String s="ORC|NW|487722|01E201806-2800042|628116|2|0|||20180628171215|||ADMIN^樊翠翠|||||||||儿科急诊门诊^^1300314";
    System.out.print(searchstr(s,"ADMIN",9));

    }
    /**
     * 
     * @param str 要查找的字符串
     * @param strcmp 开始查找的字符串,比如从ORC开始,该字符串为ORC
     * @param strindex 查找的索引数,该处为4
     * @return 查找结果字符串
     */
    

    public static String searchstr(String str,String strcmp,int strindex){
    String subString = str.substring(str.indexOf(strcmp));
    String[] strArray=subString.split("\|");
    if(strArray.length>=strindex) {
    return strArray[strindex];
    }else {
    return "要查找的字符串不存在";
    }
    }
    }

    点赞 评论
  • qq_41589486
    qq_41589486 2018-06-30 13:56

    public static void main(String[] args) {
    // TODO Auto-generated method stub

    String s="ORC|NW|487722|01E201806-2800042|628116|2|0|||20180628171215|||ADMIN^樊翠翠|||||||||儿科急诊门诊^^1300314";
    System.out.print(searchstr(s,"ORC",4));
    

    }
    public static String searchstr(String str,String strcmp,int strindex)
    {
    String[] strArray=str.split("\|");
    int i=0;
    for(i=0;i<strArray.length;i++)
    {
    if(strArray[i].equals(strcmp))
    {
    return strArray[i+strindex];
    }
    }
    return "原字符串不符合条件";
    }

    点赞 评论
  • qq_31987435
    Licon丿Never 2018-07-03 09:41

    使用String库中的split函数,根据|拆成数组,根据索引下标-1的方式就可以找到了

    点赞 评论

相关推荐