擅长:python、mysql、java
<p>regex不起作用,因为<code>\s+</code>至少需要1个空格,但<code>RAM</code>和{<cd3>}之间没有空格。要么使用<code>*</code>量词,要么删除它并使用``</p>
<pre><code>(?i)((?:\S+\s+){0,3})\bRAM\b\s*((?:\S+\s+){0,3})
</code></pre>
<p>见<a href="https://regex101.com/r/kK7uB3/2" rel="nofollow">demo</a></p>
<p>我添加了<code>\b</code>(单词边界),以确保我们匹配<code>RAM</code>,而不是{<cd7>}。在</p>
<p>注意<code>re.I</code>修饰符(或者在模式的开头使用内嵌版本<code>(?i)</code>)。在</p>
<p>其他模式也可以用类似的方式形成,只需将<code>RAM</code>替换为列表中的单词。在</p>