2015-05-18 103 views
0

我想用正則表達式提取這些方法的所有參數。但是,由於SAL標記,我無法使嵌套括號正常工作。我有這些字符串解析(多行):在python中匹配嵌套括號的正則表達式

STDMETHOD_(void, Method1)(
_Out_writes_to_(gradientStopsCount, _Inexpressible_("Retrieved through GetGradientStopCount")) D2D1_GRADIENT_STOP *gradientStops, 
UINT32 gradientStopsCount) CONST PURE; 

STDMETHOD_(void, Method1)(
_Out_writes_to_(gradientStopsCount, _Inexpressible_("Retrieved through GetGradientStopCount")) D2D1_GRADIENT_STOP *gradientStops, 
UINT32 gradientStopsCount) CONST PURE; 

我嘗試這樣做:

\(((.|\n|\r)*?)\) 

但是因爲有嵌套括號的參數,它不會正確地匹配。事實上,我想提取一切,包括像一個字符串的嵌套括號

MyFunc(...anything in here including more parenthesis...) 

可以用一個單一的正則表達式嗎?

+0

更具體的 - 你想匹配該字符串的一部分? –

+0

這將需要一個遞歸正則表達式,由Python的'regex'模塊支持。你願意使用它嗎? – vks

回答