请问这个正则表达式怎么写?
请问:<font style="cursor:pointer;" onclick="showDetails('4028c9e5389a84e90138c71e1c290432');" title="IBMHX5服务器">IBMHX5服务器</font></td>
要取出:4028c9e5389a84e90138c71e1c290432
正则表达式该怎么写?
我不会,帮帮忙啊,谢谢。 --------------------编程问答-------------------- (?<=showDetails\\(').+?(?='\\)) --------------------编程问答--------------------
public static void main(String[] args) {
Pattern p = Pattern.compile("<font (\\s|\\S)*?('((\\s|\\S)*?)')(\\s|\\S)*?</font></td>");
Matcher m = p.matcher("<font style=\"cursor:pointer;\" onclick=\"showDetails('4028c9e5389a84e90138c71e1c290432');\" title=\"IBMHX5服务器\">IBMHX5服务器</font></td>");
while(m.find()){
System.out.println("" + m.group(3));
}
}
这个应该可以 --------------------编程问答--------------------
public static void main(String[] arg) {--------------------编程问答-------------------- 看看正则表达式相关资料 就知道了 --------------------编程问答-------------------- 直接说答案 治标不治本 并不能通过答案学习到什么
List<String> imgList = new ArrayList<String>();
String intputStr = "<font style=\"cursor:pointer;\" onclick=\"showDetails('4028c9e5389a84e90138c71e1c290432');\" title=\"IBMHX5服务器\">IBMHX5服务器</font></td> ";
Pattern pattern = Pattern.compile("'(.*)'");
Matcher matcher = pattern.matcher(intputStr);
while (matcher.find()) {
imgList.add(matcher.group(1));
}
System.out.println(imgList);
}
[4028c9e5389a84e90138c71e1c290432]
这种问题找找资料 相当容易就解决了 并且还能学习到很多 --------------------编程问答-------------------- 正则表达式这个不重要, 百度里面多的是, --------------------编程问答--------------------
if ( str.indexOf("4028c9e5389a84e90138c71e1c290432") > -1 ) {
return "4028c9e5389a84e90138c71e1c290432";
}
搞定!
补充:Java , Java SE