java - 如何使用正则表达式java获取两个字符之间的数字?

标签 java regex regex-group regex-greedy boost-regex

我的字符串如下:

SUB8&20.000,-&succes&09/12/18SUB12&100.000,-&failed&07/12/18SUB16&40.000,-&succes&09/12/18

我想在 SUB,-&succes 之间获取一个字符串 "8&20.000","16&40.000"

<小时/>

我想获取成功数据如何使用java正则表达式获取字符串?

最佳答案

使用这个正则表达式,

SUB([^,]*),-&succes

Java 代码,

public static void main(String[] args) {
    String s = "SUB8&20.000,-&succes&09/12/18SUB12&100.000,-&failed&07/12/18SUB16&40.000,-&succes&09/12/18";
    Pattern p = Pattern.compile("SUB([^,]*),-&succes");
    Matcher m = p.matcher(s);
    while (m.find()) {
        System.out.println(m.group(1));
    }
}

打印,

8&20.000
16&40.000

<强> Check here

关于java - 如何使用正则表达式java获取两个字符之间的数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53699572/

相关文章:

java - Sonar 错误 - 让这个成员成为 "protected"

java - 使用 struts 显示标签在页面之间导航时出错

java - Java 中匹配某个单词零次或一次出现的正则表达式

java - 正则表达式量词java

python - 从多行文件中获取特定文本

java - 为什么没有显示实际的 Switch 图像/动画?

java - 无图像图标显示

java - 正则表达式: Replace a word conditionally

regex - Raku regex : How to know which group was captured at an alternation

c++ - 非捕获正则表达式结合字符串