擅长:python、mysql、java
<p>我将在这里使用模式<code>\bMr?s?\.?\s*\w+\b</code>:</p>
<pre class="lang-py prettyprint-override"><code>string4 = 'Mr. Venkat Mr Raj Mr.RK Mr T Mrs Venkat Mrs. Raj Ms Githa Ms. Seetha'
names = re.findall(r'\bMr?s?\.?\s*\w+\b', string4)
print(names)
</code></pre>
<p>这张照片是:</p>
<pre><code>['Mr. Venkat', 'Mr Raj', 'Mr.RK', 'Mr T', 'Mrs Venkat', 'Mrs. Raj', 'Ms Githa', 'Ms. Seetha']
</code></pre>
<p>您当前模式的原因是什么</p>
<pre class="lang-regex prettyprint-override"><code>[Mm][r-sR-S].?\s?[a-zA-Z]*\w
</code></pre>
<p>不匹配<code>Mrs. Raj</code>是指上面只能匹配<code>M</code>后跟<code>r</code>,但是<code>s</code>不在您的模式中。字符类<code>[r-sR-S]</code>只能匹配<em>一个</em>字母,而不能匹配两个</p>