java中怎么截取 固定字符串中间的字符串

如:<li class="w22"><a href="/dict/dict--35-04-1--1.html" class="blue xhx">35-04-1</a></li> 只想得到35-04-1 要怎么截取啊??高手说下啊。。。
给写下具体的实现。。谢谢了

File file=new File("E:/abc/1.txt");//源文件位置
FileReader fr=new FileReader(file);//创建文件输入流
BufferedReader in=new BufferedReader(fr);//包装文件输入流,可整行读取
String input;
while((input=in.readLine()) != null) {

String regex="class=\"blue xhx\">(\\d+[.]\\d+)</a></li>";
Pattern pattern=Pattern.compile(regex);

Matcher matcher=pattern.matcher(input);

while(matcher.find()){
System.out.println(matcher.group(1));
}
}
固定的只有 class="blue xhx">XXXX</a></li> 我需要的是XXXX 的信息 不可以根据长度来截取。。。
我的不知道为什么出不来。。高手解决下。。。急。。。

可以通过java的”substring“方法截取出对应的字符串,前提是知道开始和结束的字符串的值:
String getSignInfo = reqResult.substring(reqResult.indexOf("<sign>") + 6, reqResult.indexOf("</sign>"));
解释:上述方法就是截取reqResult字符串的中开始”<sign>“和结束”</sign>“中间部分的内容,”6“就是”<sign>“的长度,,之后将获取的结果赋值给”getSignInfo进行输出即可“;
备注:以上方法通用于截取字符串,数字”6“和开始结束字符串根据实际需要修改即可。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-05-28
要用正则吗? 如果是截取固定字符串中间的字符串,不用那么麻烦把?
固定字符串的话你应该知道它是什么把?
很简单啊,给你个main方法看看:
public static void main(String[] args)
{
String s="<li class=\"w22\"><a href=\"/dict/dict--35-04-1--1.html\" class=\"blue xhx\">35-04-1</a></li>";
String s1="<li class=\"w22\"><a href=\"/dict/dict--35-04-1--1.html\" class=\"blue xhx\">";
String s3="</a></li>";
System.out.println(s.substring(s1.length(),s.length()-s3.length()));
}本回答被提问者采纳
第2个回答  2010-05-28
正则表达式
相似回答