【发布时间】:2017-10-25 03:52:10
【问题描述】:
我返回的字符串格式如下:
PR ER
89
>
使用\n(\d+)可以从中提取数字,但有时会返回:
23 PR P 10000>
或者,它可能是这样的:
23
PR P
10000
>
在这些情况下,如何提取PR和>之间的数字10000?
【问题讨论】:
-
什么正则表达式引擎?
我返回的字符串格式如下:
PR ER
89
>
使用\n(\d+)可以从中提取数字,但有时会返回:
23 PR P 10000>
或者,它可能是这样的:
23
PR P
10000
>
在这些情况下,如何提取PR和>之间的数字10000?
【问题讨论】:
这可能对你有用:
\d+(?=\s*>)
它查找后跟任意数量的空格和'>'的任何数字序列
【讨论】:
String str = "23 PR P 10000>";
Pattern reg = Pattern.compile("(\\d+)");
Matcher m = reg.matcher(str);
while (m.find()){
System.out.println("group : " + m. group() + " - start :" + m.start() + " - end :" + m.end());
}
【讨论】:
我可能会自己回答这个问题
\d+\n>
成功了! 谢谢大家
【讨论】: