Ode*_*ded 33
如果字符串中只有一个单词,则可以使用TextInfo.ToTitleCase.无需使用Linq.
正如@Guffa所说:
这会将任何字符串转换为标题大小写,因此,"hello world"和"HELLO WORLD"都将转换为"Hello World".
为了实现exectly你问(转换所有字符时,除了第一个),你可以做到以下几点:
string mostLower = myString.Substring(0, 1) + myString.Substring(1).ToLower();
Run Code Online (Sandbox Code Playgroud)
Guf*_*ffa 18
这可以通过简单的字符串操作完成:
s = s.Substring(0, 1) + s.Substring(1).ToLower();
Run Code Online (Sandbox Code Playgroud)
请注意,这完全符合您的要求,即它将所有字符转换为小写,但第一个字符保持不变.
如果您还想将第一个字符更改为大写字母,则可以执行以下操作:
s = s.Substring(0, 1).ToUpper() + s.Substring(1).ToLower();
Run Code Online (Sandbox Code Playgroud)
请注意,此代码假定字符串中至少有两个字符.如果有可能它更短,你当然应该首先测试它.
dec*_*one 17
String newString = new String(str.Select((ch, index) => (index == 0) ? ch : Char.ToLower(ch)).ToArray());
Run Code Online (Sandbox Code Playgroud)
使用名称空间 using System.Globalization;
...
string value = CultureInfo.CurrentCulture.TextInfo.ToTitleCase("hello");
Run Code Online (Sandbox Code Playgroud)
编辑
此代码仅在其单个单词时起作用.对于将所有字符转换为较低的除了第一个字母检查Guffa Answer.
string value = myString.Substring(0, 1) + myString.Substring(1).ToLower();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17421 次 |
| 最近记录: |