2013-11-26 203 views
0

我不是正則表達式的專家,但我認爲這可以用正則表達式來完成。我想做的事是,我有這個短語正則表達式第一個單詞的大寫字母

我想CONVERT這句話

,我想轉換爲

我想轉換這句話

每個單詞的第一個字符都是大寫字母。 我怎樣才能做到這一點在正則表達式?

是在C#語言

+1

正則表達式本身不能用於以這種方式操作字符串。你使用什麼語言/平臺? –

+0

您需要盲目搜索並替換'\ b(\ w)(\ w *)\ b',替換爲'toupper(grp1)+ tolower(grp2)'或類似的東西。什麼語言? – sln

+0

語言是c# – Luis

回答

4

首先,轉換整個字符串轉換爲小寫:

var input = "I WANNA CONVERT THIS PHRASE"; 
input = input.ToLower(); 

然後你就可以使用正則表達式和lambda函數得到辦成事情:

var result = Regex.Replace(input, @"\b\w", m => m.Value.ToUpper()); 
Console.WriteLine(result); 

正則表達式\b\w與某個不是單詞字符的單詞字符匹配,該單詞字符應該表示單詞的開始 一般。

相關問題