Call functions from re.sub

后端 未结 2 974
独厮守ぢ
独厮守ぢ 2020-12-31 05:07

This is a simple example:

import re

math=\'3+5\'
print re.sub(r\'<(.)>(\\d+?)\\+(\\d+?)\', int(r\'\\2\') + int(r\'\\3\'         


        
2条回答
  •  情深已故
    2020-12-31 06:04

    You need to use lambda function.

    print re.sub(r'<(.)>(\d+?)\+(\d+?)', lambda m: str(int(m.group(2)) + int(m.group(3))), math)
    

提交回复
热议问题