2016-07-14 6 views
0

mit dem folgenden Ausdruck (Beispiel A):Regex, ein Ausdruck math Extrahieren

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

würde Ich mag ihn nur wenig extrahieren:

hour(@[email protected]_DATE) 

Hier kann ich auch so etwas wie haben (Beispiel B):

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

Ich mag würde nur diese beiden Teile extrahieren:

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

Irgendwelche Gedanken?

+0

Warum regex? Sie müssen teilen, was Sie bisher codiert haben und Sie müssen uns genau sagen, was das Problem ist, das Sie mit Ihrem Code haben. – Kinetic

Antwort

0

würde ich mit so etwas wie dies gehen:

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

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

Dank Sebastian Lenartowicz –