java从特定字符串中提取信息

anyType{schema=anyType{element=anyType{complexType=anyType{choice=anyType{element=any... anyType{schema=anyType{element=anyType{complexType=anyType{choice=anyType{element=anyType{complexType=anyType{sequence=anyType{element=anyType{}; element=anyType{}; element=anyType{}; element=anyType{}; }; }; }; }; }; }; }; diffgram=anyType{NewDataSet=anyType{Table1=anyType{ResultValue=50; gzdh_AddWorng=anyType{}; gzdh_UpdateWorng=anyType{}; gzdh_AddInfoWorng=anyType{}; }; }; }; }

从上边字符串中提取信息ResultValue=50
展开
 我来答
旅春冬TJ
2013-07-27 · TA获得超过1082个赞
知道大有可为答主
回答量:1271
采纳率:66%
帮助的人:501万
展开全部

其实严格意义上来说是需要正则表达式的。但是倘若你只有这么一个要求的话,还是很好办的。我下边的程序把你上述的字符串放到了一个文件里面,我判渣做通过读取文件来解决这个问题。由于代码量不是很多我把代码放到类的main函数里面完成。

package test;

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class qin {

/**
 * @param args
 */
public static void main(String[] args) {
// TODO 自动生成的方法存根
String pattern = "[A-Z]\\w+=\\d+";
        String file="src/test/qin.txt";
        String str1="";
        BufferedReader rea = null;
        StringBuilder str=new StringBuilder("");
        
     try {
rea=new BufferedReader(new FileReader(file));
} catch (FileNotFoundException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
     
     try {
while((str1=rea.readLine())!=null)
   {
 str.append(str1+"\n");
 
   }
} catch (IOException e) {
// TODO 自动生成的掘衡 catch 块
e.printStackTrace();
}
    // System.out.println(str.toString());
     String temp=str.toString();
   梁磨  Pattern p = Pattern.compile(pattern); 
     Matcher m = p.matcher(temp);
     
     while(m.find())
     {
      
      System.out.println(m.group());
     }
}

}
B2K1bonPplR
2013-07-27 · TA获得超过2049个赞
知道小有建树答主
回答量:1156
采纳率:72%
帮助的人:387万
展开全部
public class Test {
  public static void main(String[] args) {
    String message = "anyType{schema=anyType{element=anyType{complexType=anyType{choice=anyType{element=anyType{complexType=anyType{sequence=anyType{element=anyType{}; element=anyType{}; element=anyType{}; element=anyType{}; }; }; }; }; }; 橡哪}; }; diffgram=anyType{NewDataSet=anyType{Table1=anyType{ResultValue=50; gzdh_AddWorng=anyType{}; gzdh_UpdateWorng=anyType{}; gzdh_AddInfoWorng=anyType{}; }; }; }; }";
  察弯  Pattern p = Pattern.compile("\\{(ResultValue=[^;]*);");
    Matcher m = p.matcher(message);
    while (m.find()) {
      System.out.print(m.group(1));
    }
  梁没码}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友b2097e4a
推荐于2016-05-16 · 超过33用户采纳过TA的回答
知道答主
回答量:176
采纳率:0%
帮助的人:54.9万
展开全部
String str = "anyType{schema=anyType{element=anyType{complexType=anyType{choice=anyType{element=anyType{complexType=anyType{sequence=anyType{element=anyType{}; element=anyType{}; element=anyType{}; element=anyType{}; }; }; }; }; }; }; }; diffgram=anyType{NewDataSet=anyType{Table1=anyType{ResultValue=50; gzdh_AddWorng=anyType{}; gzdh_UpdateWorng=anyType{}; gzdh_AddInfoWorng=anyType{}; }; }; }; }";
String des = str.substring(str.indexOf("ResultValue="), str.indexOf("; gzdh_AddWorng="));
System.out.println(des);
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式