假设我有这样的 回复[3042] 一串内容,要从中将3042匹配出来,该用什么样的正则表达式?
5条回答 默认 最新
- oxcow 2012-03-18 19:51关注
[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
30433
[/quote]基本上可以满足你的需要!
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 关于#python#的问题:求帮写python代码
- ¥20 MATLAB画图图形出现上下震荡的线条
- ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
- ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
- ¥15 来真人,不要ai!matlab有关常微分方程的问题求解决,
- ¥15 perl MISA分析p3_in脚本出错
- ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
- ¥15 ubuntu虚拟机打包apk错误
- ¥199 rust编程架构设计的方案 有偿
- ¥15 回答4f系统的像差计算