首页 > 解决方案 > 伴随正则表达式的语言

问题描述

如果这不太有意义,我很抱歉,希望它可以解决。

我有一个应用程序,您可以在配置文件中指定一个正则表达式,用于匹配项目列表。然后它有各种配置选项来处理捕获的组,例如,如果正则表达式匹配此项目:

data_20190503_120303.tsv

正则表达式

data_(?<yyyy>\d{4})(?<MM>\d\d)(?<dd>\d\d)_(?<hh>\d\d)(?<mm>\d\d)(?<ss>\d\d)\.tsv

然后它可能有如何使用捕获的组的配置条目

groupby=$yyyy$MM$dd orderby=$yyyy$MM$dd$hh$mm$ss

这工作得很好,但后来我想我会添加一些功能,例如将 Jan、feb 等月份转换为 01、02,所以像这样定义它:

orderby=$yyyy${convertMonth:$MMM}$dd

然后我添加了一些其他功能和特性。所以我开始定义一种语言来组合捕获的组。

所以,我的问题是,这样的事情存在吗?我在重新发明轮子吗?是否存在具有大量功能的东西?

标签: javaregex

解决方案


推荐阅读