当前位置: 代码迷 >> J2SE >> 有关正则表达式有关问题
  详细解决方案

有关正则表达式有关问题

热度:124   发布时间:2016-04-24 01:29:20.0
有关正则表达式问题
Java code
Matcher m = Pattern.compile("<inputname=\"title\"type=\"hidden\"id=\"title\"value=\"(.*?)\"/>").matcher(html);        if(m.find()){            temp.setTitle(m.group(1));        }

现在不知道为什么这个m.group(1)始终取不出来,而打断点看的时候m.group(0)是有值的

------解决方案--------------------
Java code
<input\\s*.+?\\s*id=\"title\"\\s*value=\"(.+?)\"\\s*/>
------解决方案--------------------
把你的html贴出来看看
------解决方案--------------------
Java code
public static void main(String[] args) {        String str = "<input name=\"title\" type=\"hidden\" id=\"title\" value=\"test\" />";        Pattern pattern = Pattern                .compile("<input\\s*name=\"\\w*\"\\s*type=\"\\w*\"\\s*id=\"\\w*\"\\s*value=\".*\"\\s*/>");        Matcher matcher = pattern.matcher(str);        while (matcher.find()) {            System.out.println(matcher.group());        }    }
------解决方案--------------------
和你html內容有關,如果你把模式串作為匹配對象,同時替換(.*?)部份為abc或者a\"bc
還是可以找到的

所以查看一下這部份在html中到底是什麽再作針對性修改