2016-02-22 4 views
0

я уже принял взглянуть на такие должности, как:Капитализируя первую букву строки только

Format to first letter uppercase
How to capitalise the first letter of every word in a string

Но ни один из них не кажется, на самом деле работает. Я бы мысли, чтобы начать с, что было бы просто:

.Capitalize(); 

Как есть:

.Lower(); & .Upper(); 

Может кто-нибудь, возможно, дать мне какие-либо документы или ссылки о преобразовании в строку, как:

string before = "INVOICE"; 

Чтобы потом стать:

string after = "Invoice"; 

Я не получаю ошибок, используя методы сообщений, которые я читаю, но мне остается before.

+1

Вы можете создать функцию, которая принимает строку в качестве входных данных, принимает первый символ в качестве подстроки, делает это в верхнем регистре, заменяет первый символ в верхнем регистре и возвращает результат. – Robert

+1

И второй вопрос, который вам нужно прочитать, - [Конвертировать всю первую букву в верхний регистр, опускаться ниже для каждого слова] (http://stackoverflow.com/questions/1943273/convert-all-first-letter-to-upper-case -rest-lower-for-each-word? lq = 1) –

+1

's = System.Threading.Thread.CurrentThread.CurrentCulture.TextInfo.ToTitleCase (s.toLower());' из так называемого дубликата является ссылкой I предоставленный в вопросе, который я заявил, «НЕ РАБОТАЕТ», так что удалите дубликат, спасибо ... @SergeyBerezovskiy – KDOT

ответ

5

Что об использовании ToUpper на первом символе и ToLower на оставшейся строке?

string after = char.ToUpper(before.First()) + before.Substring(1).ToLower(); 
+0

'string trantype = char.ToUpper (row.Trantype [0]) + row.Trantype.SubString (1) .ToLower(); '- возвращает эту ошибку: \t« string »не содержит определения для« SubString », и не может быть найден метод расширения« SubString », принимающий первый аргумент типа« string »(вам не хватает директивы using или ссылка на сборку?) – KDOT

+2

Существует опечатка: 'SubString' называется' Substring'. –

+1

Если вы удалите ']' после '.First()' это работает :) Еще раз спасибо! – KDOT

3

Вы можете создать метод, который делает что-то вроде этого:

string UppercaseFirst(string str) 
{ 
    if (string.IsNullOrEmpty(str)) 
     return string.Empty; 
    return char.ToUpper(str[0]) + str.Substring(1).ToLower(); 
} 

И использовать его как это:

string str = "thISstringLOokSHorribLE"; 
string upstr = UppercaseFirst(str); 

, чтобы получить это:

Thisstringlookshorrible 
Смежные вопросы