【发布时间】:2019-05-03 15:49:05
【问题描述】:
假设我有以下功能
def func(self, arg1=None, arg2=None):
"""
Returns the product for the specified arg1 and arg2.
Args:
arg1: argument 1
arg2: argument 2
Returns:
product of arg1 for arg2.
DAL Owner: Team IT
Data Owner: Team A
"""
return arg1*arg2
我只需要匹配三引号内的任何内容。我已经能够使用以下正则表达式将其作为一个组进行匹配
def func.*?\):.*?\"\"\"(.*)\"\"\"
但它不允许我在 python 中轻松地进行字符串替换。所以我需要将文档字符串捕获为匹配而不是组。我尝试了lookbehind (?<=def f2),但随后遇到了lookbehind 问题中不允许的可变长度。任何有关如何解决此问题的想法都将不胜感激。
更新:
我真的很想知道这是否可以通过完全匹配来完成,即不必使用多个捕获组
【问题讨论】: