【发布时间】:2021-10-04 23:43:53
【问题描述】:
我正在使用正则表达式来获取字符串的某些部分。假设我正在捕获 3 组。我将这 3 个组存储在数据库中。现在我想从这些组中重新创建原始字符串。有没有办法做到这一点?
例如原始字符串
longPrefix-202007_3847c820e158484dbc6ff486fc08cf6a.someSuffix
正则表达式
^(longPrefix-)(\d+)(_)([a-fA-F0-9]+)(.someSuffix)
之后会有3组,
group1: longPrefix-
group2: 202007
group3: _
group4: 3847c820e158484dbc6ff486fc08cf6a
group5: .someSuffix
我只存储 group2 和 group4,因为那只是改变部分。
问题是只能使用group2、group4和regex生成原始字符串吗?
【问题讨论】:
-
连接值,有什么问题?
-
如果
longPrefix-、_和.someSuffix是常量,为什么不简单地重用常量呢?你有什么特别的理由来解析正则表达式吗? -
somesuffix 仅作为示例,它们也可能是可变的。
contact the value的问题是有人必须保持附加和正则表达式逻辑同步。 -
如果RegExp的模式总是一样的,我建议你写一个RegExp来解析你的RegExp。 :)
标签: java regex regex-group