正则表达式,提取数学表达式

本文关键字:表达式 提取 正则表达式 | 更新日期: 2023-09-27 17:56:56

给定以下表达式(示例 A):

10 + hour(@LAST_MODIFIED_DATE-@SUBMIT_DATE) * (@TOTAL_TRANSFERS+@GROUP_TRANSFERS)

我想提取这一部分:

hour(@LAST_MODIFIED_DATE-@SUBMIT_DATE)

在这里,我也可以有类似的东西(示例 B):

10 + hour(@LAST_MODIFIED_DATE-@SUBMIT_DATE) + (@TOTAL_TRANSFERS+@GROUP_TRANSFERS) + minutes(@LAST_MODIFIED_DATE-@SUBMIT_DATE) + 1000

我只想提取以下两部分:

hour(@LAST_MODIFIED_DATE-@SUBMIT_DATE)
minutes(@LAST_MODIFIED_DATE-@SUBMIT_DATE) 

有什么想法吗?

正则表达式,提取数学表达式

我会选择这样的东西:

Matches m = Regex.Matches(mathString, "(?:hours?|minutes?|seconds?)'([^)]+')");
foreach (Match match in m)
    if (match.Value != "")
        doSomething(match.Value);