擅长:python、mysql、java
<p>一种选择是在匹配数字后使用以单词边界结尾的模式</p>
<pre><code>\b(?:lower|upper) quartile \d+(?:,\d+)?\b
</code></pre>
<ul>
<li><code>b</code>防止部分匹配的单词边界</li>
<li><code>(?:lower|upper) quartile </code>匹配其中一个备选方案,然后<code>quartile </code></li>
<li><code>\d+(?:,\d+)?</code>将1+个数字与可选的小数部分匹配</li>
<li><code>\b</code>单词边界</li>
</ul>
<p>见a<a href="https://regex101.com/r/I4JHKe/1" rel="nofollow noreferrer">regex demo</a>或a<a href="https://ideone.com/YITWAq" rel="nofollow noreferrer">Python demo</a></p>
<pre><code>import re
pattern = r"\b(?:lower|upper) quartile \d+(?:,\d+)?\b"
s = "(....) partijen waarvan de lower quartile 0,68% bedraagt en de upper quartile 2,06%."
print(re.findall(pattern, s))
</code></pre>
<p>输出</p>
<pre><code>['lower quartile 0,68', 'upper quartile 2,06']
</code></pre>