<p>您尝试的模式使用<a href="https://www.regular-expressions.info/charclass.html" rel="nofollow noreferrer">character class</a>,它将匹配列出的任何字符1+次。你知道吗</p>
<p>要不匹配任何在<code>Section</code>之后包含数字的字符,可以重复0多次匹配空格,后跟至少包含一个数字的非空格字符。你知道吗</p>
<p>捕获组中不包含数字的内容。你知道吗</p>
<pre><code>Section (?:[^\s\d]*\d\S* )*([^:]+):
</code></pre>
<p><strong>解释</strong></p>
<ul>
<li><code>Section </code>匹配节和空格</li>
<li><code>(?:</code>非捕获组
<ul>
<li><code>[^\s\d]*</code>使用<a href="https://www.regular-expressions.info/charclass.html#negated" rel="nofollow noreferrer">negated character class</a>匹配除空白字符和数字0+以外的任何字符</li>
<li><code>\d\S* </code>然后匹配一个数字,后跟匹配0+乘以一个非空白字符</li>
</ul></li>
<li><code>)*</code>关闭组并重复0+次</li>
<li><code>([^:]+):</code>在组1中捕获匹配1+倍除<code>:</code>之外的任何字符,然后匹配<code>:</code></li>
</ul>
<p><a href="https://regex101.com/r/nwZcKq/1" rel="nofollow noreferrer">Regex demo</a></p>
<p>例如</p>
<pre><code>import re
regex = r"Section (?:[^\s\d]*\d\S* )*([^:]+):"
s = "Section 2.1. 1.1.14. Minimum Rent Schedule (subiect to adjustment, if applicable):less than or greater than twelve (12) full calendar months (and such proration or adjustment being based upon the actual number of days in such Lease Year)"
print(re.match(regex, s).group(1))
</code></pre>
<p>结果</p>
<blockquote>
<p>Minimum Rent Schedule (subiect to adjustment, if applicable)</p>
</blockquote>
<p>要找到多个,可以使用关于芬德尔地址:</p>
<pre><code>print(re.findall(regex, s))
</code></pre>
<p><a href="https://ideone.com/UZMexQ" rel="nofollow noreferrer">Demo using re.findall</a></p>