日期:2014-05-20  浏览次数:20728 次

怎么在一个长字符串里,找到指定的字符?
字符串是下面这样的:
<fieldInfo><fieldChName>人名</fieldChName><fieldEnName>Name</fieldEnName><fieldContent>张三</fieldContent></fieldInfo>
<fieldInfo><fieldChName>地址</fieldChName><fieldEnName>Address</fieldEnName><fieldContent>北京</fieldContent></fieldInfo>


我想找到“地址”那一行里,fieldContent标签中的“北京”?

------解决方案--------------------
1、如果是String字符串:可以用String 的split方法,把多个记录行分成数组的形式,然后再读取数组中的每个String的值,首先判断filedname后面的值是否为地址,然后再得到fieldContent的Index,从而得到后面的值。大概思路就是如此了。
2、如果是xml文件,你看看dom解析吧,根据节点值判断,可以得到,看看API,就会了
------解决方案--------------------

//正则提取
public static List<String> getContext2() {
String html="kk<p>123456</p>ssss";
        List<String> resultList = new ArrayList<String>();
        Pattern p = Pattern.compile("<p>([^</p>]*)");//匹配<p>开头,</p>结尾的文档
        Matcher m = p.matcher(html );//开始编译
        while (m.find()) {
            resultList.add(m.group(1));//获取被匹配的部分
        }
        return resultList;
    }

截取的<p>改成你的那个
然后处理返回的list就可以了