2016-07-14 52 views
0

考慮下面的表達式(實例A):正則表達式,提取數學表達式

10 + hour(@[email protected]_DATE) * (@[email protected]_TRANSFERS) 

我想只提取該位:

hour(@[email protected]_DATE) 

在這裏,我也能有這樣的事情(實施例B):

10 + hour(@[email protected]_DATE) + (@[email protected]_TRANSFERS) + minutes(@[email protected]_DATE) + 1000 

我想只提取這兩個部分:

hour(@[email protected]_DATE) 
minutes(@[email protected]_DATE) 

有什麼想法?

+0

爲什麼正則表達式?您需要分享迄今爲止已編碼的內容,並且您需要告訴我們您的代碼存在哪些問題。 – Kinetic

回答

0

我會像這樣的東西去:

Matches m = Regex.Matches(mathString, "(?:hours?|minutes?|seconds?)\([^)]+\)"); 

foreach (Match match in m) 
    if (match.Value != "") 
     doSomething(match.Value); 
+0

謝謝塞巴斯蒂安Lenartowicz –