1
蟒蛇捕獲組,我需要利用在字符串中使用正則表達式的每一個字的第一個字母:與應用re.sub
>>> import re
>>> re.sub(r"\b(\S)", (r"\1").upper(), "foo bar")
'foo bar'
我希望得到的結果是「富酒吧」來代替。
我已經試過標題方法和string.capwords,但如下圖所示都有問題:
>>> import string
>>> string.capwords("foo bar 1a ")
'Foo Bar 1a'
>>> "1a".title()
1A
使用lambda表達式作爲@Sebastian的意見提出以下爲我工作。
是否有必要使用正則表達式?你能用「foo bar」.title()嗎? –
[如何將字符串中每個單詞的首字母(Python)大寫?](http://stackoverflow.com/questions/1549641/how-to-capitalize-the-first-letter-of-each -word-in-a-string-python) – wildwilhelm
我試過了,但是當第一個字符是數字時,標題似乎不能正確工作。例如,我希望「1a」保持不變,但是「1a」.title()返回「1A」 – Anand