C# 正则表达式将驼峰大小写转换为句子大小写

本文关键字:大小写 转换 句子 正则表达式 | 更新日期: 2023-09-27 18:31:06

在我的示例中 var key = new CultureInfo("en-GB").TextInfo.(item.Key)产生,"驼峰"我可以添加什么正则表达式,在第二个"c"之前产生一个空格?

例子:

"骆驼案">"骆驼案"

"是时候停止了"> "是时候停止了"

C# 正则表达式将驼峰大小写转换为句子大小写

方法之一。

string input = "itIsTimeToStopNow";
string output = Regex.Replace(input, @"'p{Lu}", m => " " + m.Value.ToLowerInvariant());
output = char.ToUpperInvariant(output[0]) + output.Substring(1);

一种方法是用大写字母替换大写字母,然后将第一个字符设为大写:

var input = "itIsTimeToStopNow";
// add spaces, lower case and turn into a char array so we 
// can manipulate individual characters
var spaced = Regex.Replace(input, @"[A-Z]", " $0").ToLower.ToCharArray();
// spaced = { 'i', 't', ' ', 'i', 's', ' ', ... }
// replace first character with its uppercase equivalent
spaced[0] = spaced[0].ToString().ToUpper()[0];
// spaced = { 'I', 't', ' ', 'i', 's', ' ', ... }
// combine the char[] back into a string
var result = String.Concat(spaced);
// result = "It is time to stop now"