正则表达式匹配HTML标签中的一部分内容

假设我有这样的 回复[3042] 一串内容,要从中将3042匹配出来,该用什么样的正则表达式?

[code="java"] public static void main(String[] args) {
String string = "回复[3042]"
+ "回复[3043]"
+ "回复[]"
+ "回复[3]";
Pattern p = Pattern.compile("<[^>]*>[^>]*\[(\d*)\][^>]*</[^>]*>");
Matcher m = p.matcher(string);
StringBuilder sb = new StringBuilder();
while (m.find()) {
sb.append(m.group(1));
sb.append("\n");
}
System.out.println(sb.toString());
}[/code]
结果:
[quote]3042
3043

3
[/quote]

基本上可以满足你的需要!

回复[([0-9]{0,n})] 取第一组
如果有特殊要求,请说明

如果想更进一步了解正则表达式,请参考
http://www.jb51.net/tools/zhengze.html

如果想更进一步了解正则表达式,请参考 [url]http://www.jb51.net/tools/zhengze.html[/url]

String regex = "回复[(.*?)]";
Pattern pattern = Pattern.compile(regex);
Matcher match = pattern.matcher(html);
StringBuffer buffer = new StringBuffer();
while(match.find()){
buffer.append(match.group(1));
buffer.append("\n");
}
可以参考
http://jameszhao1987.iteye.com/blog/1415430