如何在多个分隔符之间获取String

时间:2015-12-10 17:34:11

标签: java regex

我有一个字符串:

"<field-length-message-total>"

Total是一个int,从0到99不等。

我想输出&#34;总数&#34; int值,即:

between "-" & ">".

我尝试使用此正则表达式生成器:http://regexr.com/

我的表达是:

\-(.*?)\>, 

而是抓取第一个-分隔符。

3 个答案:

答案 0 :(得分:2)

这对你有用:

    String s = "<field-length-message-121>";
    System.out.println(s.replaceAll(".*?\\-(\\d+)>", "$1"));

O / P:

121

答案 1 :(得分:1)

您可以使用此基于外观的正则表达式:

(?<=-)([^>-]+)(?=>)

RegEx Demo

答案 2 :(得分:1)

如果&#39;总计&#39;值总是一个数字,你可以使用一个lookbehind:

(?<=-)\d+

Regex demo

输入:

<field-length-message-77>

匹配

77