繁体   English   中英

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

[英]Regex, extracting a math expression

给定以下表达式(示例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);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM