2016-07-12 15 views
0

これを行う方法については完全にわかりません。私はしばらく試してきましたが、適切な方法を見つけることができません。パターンに基づく関数の引数の解析

したがって、私は2つの引数を持つ関数を表すパターンを持っているとしましょう:function_name(arg0, arg1)

arg0arg1の値はどのようにして取得できますか?

サンプル入力はfunction_name(10, 20), function_name(function_name(15 + 2, 16), 6)のようになります。

もう1つのパターンはfunction_2[arg0](arg1)です。

基本的に、このようなパターンに一致する文字列を見つけて、引数の値を抽出するにはどうすればよいですか?

答えて

1

あなたは正規表現パターンマッチングのためのモジュールreを使用することができます。

In [27]: import re 
    ...: s='function_name(10, 20)' 
    ...: m=re.search(r'\((.*),(.*)\)', s) 
    ...: m.groups() 
Out[27]: ('10', ' 20') 

In [28]: arg1, arg2 = m.groups() 
    ...: print arg1, arg2 
    ...: 
10 20 
関連する問題