我有一个
String
,其中包含这样的表达式:
final String expression = "id = 123 AND openDate < 2023-01-01 AND closeDate = 2024-01-01";
由于
openDate
和 closeDate
已被弃用并被 openDateTime
和 closeDateTime
取代,我需要在执行之前修复表达式,如下所示:
final String newExpression = expression
.replaceAll("\\bopenDate\\b", "openDateTime")
.replaceAll("\\bcloseDate\\b", "closeDateTime");
上面的语句产生以下表达式:
"id = 123 AND openDateTime < 2023-01-01 AND closeDateTime > 2024-01-01"
问题是我还需要将实际的日期值转换为日期时间,这样最终的表达式是这样的:
"id = 123 AND openDateTime < 2023-01-01 00:00 AND closeDateTime = 2024-01-01 00:00"
如何获取实际日期next到
openDate
和closeDate
,以便我可以将它们转换为日期时间值?
最终字符串表达式 = "id = 123 AND openDate < 2023-01-01 AND closeDate = 2024-01-01";