Pattern pattern = Pattern.compile("<div id=\"ce12\">.+?</div>"); 
Matcher matcher = pattern.matcher(xxx);
        while (matcher.find()){
  ww = matcher.group();
                    out.println(ww);
  }代码如上,WW是STRING型,以上代码可以正常显示,然后我要处理WW的内容,(WW内容全为数字),就是做个加法,要换成整型,于是加了int j = Integer.parseInt(ww);这句,但是报错,想问下matcher.group();应该是什么类型的数据?可以把它赋值给字符型,为什么就不能转换成整型呢?

解决方案 »

  1.   

    matcher.group() 返回的确实 是String
    但你用parseInt 时,你得保证全是数字,或者是整型
    不全是数字,或者数字过大,小数,都会发生NumberFormatException
    数字过大且是整数,不妨用Long.parseLong()
    小数就用Duoble.parseDouble()
      

  2.   

    知道原因了,原来提取后的内容是"<div id="ce12">56</div>",并不光是56,所以不能转换,
      

  3.   

    int sum = 0;
    while (matcher.find()){
      ww = matcher.group();
      sum += Integer.parseInt(ww);
    }
      

  4.   

    试了下楼上的,出错了,
    java.lang.NumberFormatException.forInputString(Unknown Source)
    java.lang.Integer.parseInt(Unknown Source)