请教一个截取字段的问题
ip=10.80.119.60;port=21;user=root;password=ecip$zj123;vendor=EASTCOM 
我要截取ip,port,user,password,vendor....的值,实际上也久是第一个=号与第一个;之间,第二个=号与第二个;之间....的值,以及第五个=号到最后的值
substring该如何取啊?
            

解决方案 »

  1.   

    首先你使用
    String t="ip=10.80.119.60;port=21;user=root;password=ecip$zj123;vendor=EASTCOM";String ts[]=t.split(";");//分号隔开然后剩下的就是=号分割的字符串for(String m :ts){
      String mm=m.split("=");
       System.out.println(mm[1]);
    }
      

  2.   

    这样 打印出来的是
    -------------------mm[1]10.70.114.69
    -------------------mm[1]21
    -------------------mm[1]root
    -------------------mm[1]ecip$zj123
    -------------------mm[1]EASTCOM 虽然是取到了,但我希望能够单独的表示出来啊,因为我要一个个作为参数传递的还有什么方法吗
      

  3.   

    HashMap<String,String> map = new HashMap<String,String>();
    for(String m :ts){ 
      String[] mm=m.split("=",2); 
      map.put(mm[0],mm[1]);
    }
    System.out.println(map.get("ip"));
      

  4.   

    你都取出来,就随便找个标识符粘贴在一起吧,做成a+b+c+d,那边获取了再分拆开来
      

  5.   

    package com.suypower.chengyu.string;import java.util.HashMap;public class SubstringDemo {
    public static void main(String[] s)
    {
    // 请教一个截取字段的问题 
    String sub="ip=10.80.119.60;port=21;user=root;password=ecip$zj123;vendor=EASTCOM"; 
    //// 我要截取ip,port,user,password,vendor....的值,实际上也久是第一个=号与第一个;之间,
    // 第二个=号与第二个;之间....的值,以及第五个=号到最后的值 
    // substring该如何取啊? 
    String baby ="";
      String[] mm=sub.split(";");
      for(int i=0;i<mm.length;i++)
      {
      System.out.println(mm[i]);
      baby +="="+mm[i];
      System.out.println("%%%%%%%%%%%%%%%%%%%%"+baby);
      }
      System.out.println("********************");
      
      System.out.println("^^^"+baby);
      String result[] = new String[5];
      result =baby.split("=");
      for(int i=0;i<result.length;i++)
      {
      System.out.println(result[i]);
      }
      /*
       * 输出结构为:
       *
    ip
    10.80.119.60
    port
    21
    user
    root
    password
    ecip$zj123
    vendor
    EASTCOM
       */
    //   在取其中的值
      for(int i=0;i<result.length;i++)
      {
      if(i%2 == 1)
      {
      continue;
      }else
      {
      System.out.println("**+++++++++++++++++**");
      System.out.println(result[i]);
      }
      }
    }
    }
      

  6.   


    public class test { /**
     * @param args
     */
    public static void main(String[] args) {
    String t="ip=10.80.119.60;port=21;user=root;password=ecip$zj123;vendor=EASTCOM"; 
    String ts[]=t.split(";");//
    //System.out.print(ts[0]);
    for(int i=0;i<ts.length;i++)
    {
    String mm[]=ts[i].split("=");
    System.out.print(mm[0]+"="+mm[1]+",");
    } }}
      

  7.   

    public class Spit {
    public static void main(String[] args) {
    String test="ip=10.80.119.60;port=21;user=root;password=ecip$zj123;vendor=EASTCOM";
    String first[]=test.split(";");
    for(String a:first){
    // System.out.println(a);
    String two[]=a.split("=");
    int i=1;
    for(String b:two){
    if(i%2==0){
    System.out.println(b);
    }
    i++;
    }
    }
    }
    }
    =================================================
    结果:
    10.80.119.60
    21
    root
    ecip$zj123
    EASTCOM还是public class Spit {
    public static void main(String[] args) {
    String test="ip=10.80.119.60;port=21;user=root;password=ecip$zj123;vendor=EASTCOM";
    String first[]=test.split(";");
    for(String a:first){
    System.out.println(a);
    // String two[]=a.split("=");
    // int i=1;
    // for(String b:two){
    // if(i%2==0){
    // System.out.println(b);
    // }
    // i++;
    // }
    }
    }
    }
    ==========================================
    结果:
    ip=10.80.119.60
    port=21
    user=root
    password=ecip$zj123
    vendor=EASTCOM
    ==================================================
    如果两个答案都不是我就无语了.