擅长:python、mysql、java
<p>您可以使用<code>regular expressions</code>查找任何单词的第一个字母,然后<code>upper()</code>查找它:</p>
<pre><code>import re
def custom_title(s):
re.sub(r"(?:(?<=\W)|^)\w(?=\w)", lambda x: x.group(0).upper())
custom_title('luis XIV de francia')
# > 'Luis XIV De Francia'
</code></pre>
<p><code>regex's sub</code>方法使其适用于带有点状标记的较大字符串</p>
<pre><code>custom_title('luis XIV de francia, something. foo-bar')
# > 'Luis XIV De Francia, Something. Foo-Bar'
</code></pre>
<p>这里还有另一个版本也可以大写<strong>单字母单词<strong>:</p>
<pre><code>def custom_title(s):
return re.sub(r"(?:(?<=\W)|^)\w", lambda x: x.group(0).upper(), s)
</code></pre>