当前位置: 首页 > 知识库问答 >
问题:

Delimeter的正则表达式[副本]

彭坚壁
2023-03-14

我试图为分隔符“(“, “)”, “,”编写正则表达式。我试图编写正则表达式,但它不是正确的分隔符。

假设输入是mult(3, add(2, subs(4,3)))。我的分隔符regex的输出是:3, add(2, subs(4,3

public class Practice {

    private static final String DELIMETER = "\\((.*?)\\)";

    public static void main(String[] args) {
        Scanner reader = new Scanner(System.in);
        String arg = reader.next();
        Pattern p = Pattern.compile(DELIMETER);
        Matcher m = p.matcher(arg);
        while (m.find()) {
            System.out.println(m.group(1));
        }
    }
}

在分隔符之间获取字符串的正确正则表达式是什么?

共有1个答案

麹承
2023-03-14

通常,不能使用正则表达式来匹配任何可以递归嵌套的对象。但是,如果您删除了 从正则表达式中,它将从第一个到最后一个匹配,这可能足够好了,这取决于您希望输入的样子。

 类似资料:
  • excel公式是否为模式匹配提供类似regex的功能? excel公式是否提供了具有类似表现力的模式匹配功能?搜索似乎是相当有限的,为了工作,它需要利用规则,因为文本是用户提交的,我不能真正依赖。

  • 昨天,我需要向正则表达式添加一个文件路径,创建一个如下所示的模式: 一开始正则表达式不匹配,因为包含几个正则表达式特定的符号,如 或 。作为快速修复,我将它们替换为 和 . 与 . 然而,我问自己,是否没有一种更可靠或更好的方法来清除正则表达式特定符号中的字符串。 Python 标准库中是否支持此类功能? 如果没有,您是否知道一个正则表达式来识别所有正则表达式并通过替代品清理它们?

  • 有没有人试图描述与正则表达式匹配的正则表达式? 由于重复的关键字,这个主题几乎不可能在网上找到。 它可能在实际应用程序中不可用,因为支持正则表达式的语言通常具有解析它们的方法,我们可以将其用于验证,以及一种在代码中分隔正则表达式的方法,可用于搜索目的。 但是我仍然想知道匹配所有正则表达式的正则表达式是什么样子的。应该可以写一个。

  • 在 OpenResty 中,同时存在两套正则表达式规范:Lua 语言的规范和 ngx.re.* 的规范,即使您对 Lua 语言中的规范非常熟悉,我们仍不建议使用 Lua 中的正则表达式。一是因为 Lua 中正则表达式的性能并不如 ngx.re.* 中的正则表达式优秀;二是 Lua 中的正则表达式并不符合 POSIX 规范,而 ngx.re.* 中实现的是标准的 POSIX 规范,后者明显更具备通用

  • 一、概述 二、匹配单个字符 三、匹配一组字符 四、使用元字符 五、重复匹配 六、位置匹配 七、使用子表达式 八、回溯引用 九、前后查找 十、嵌入条件 参考资料 一、概述 正则表达式用于文本内容的查找和替换。 正则表达式内置于其它语言或者软件产品中,它本身不是一种语言或者软件。 正则表达式在线工具 二、匹配单个字符 . 可以用来匹配任何的单个字符,但是在绝大多数实现里面,不能匹配换行符; . 是元字

  • 这部分内容可以说是学习shell脚本之前必学的内容。如果你这部分内容学的越好,那么你的shell脚本编写能力就会越强。所以不要嫌这部分内容啰嗦,也不要怕麻烦,要用心学习。一定要多加练习,练习多了就能熟练掌握了。 在计算机科学中,正则表达式是这样解释的:它是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在很多文本编辑器或其他工具里,正则表达式通常被用来检索和/或替换那些符合某个模