我有一个字符串(全文)。它由一个部分(即内置函数的名称)和第二部分(即说明)组成。
我要提取描述。

即我想提取\rPython *function_name*()\r与此\r之间的文本部分
因此结果将是“为给定函数返回类方法”

我已经尝试过此r'(?<=\\rPython .()\\r)(.*?)(?=\\r)',但它不会显示找到的任何结果,我也不知道为什么。

#find description
fulltext=r'\rPython classmethod()\rreturns class method for given function\r'
description_regex=re.compile( r'(?<=\\rPython .()\\r)(.*?)(?=\\r)')
description= description_regex.search(fulltext)
print(description.group())

最佳答案

我们可以在这里尝试使用re.findall

input = "\rPython classmethod()\rreturns class method for given function\r"
matches = re.findall(r'\rPython\s+[^()]+\(\)\r(.*)\r', input)
print(matches)


打印:

['returns class method for given function']


如果您有可能期望多个匹配项的文本,则使用re.findall可能有意义。

10-06 11:22