欢迎光临
我们一直在努力

使用 C# 将大驼峰转换为小驼峰或蛇形命名法

在 .NET 的世界中,一般习惯对公开的信息(类名、属性名、方法名等)使用大驼峰命名法(CamelCase)。比如常见的 Console 类型、Title 属性以及 WriteLine 方法。

除了大驼峰命名法,常见的还有小驼峰命名法以及蛇形命名法。

小驼峰式命名法(lower camel case)

第一个单词以小写字母开始,第二个单词的首字母大写。例如:firstName、lastName。这种命名法在 JavaScript 中很常见,比如:document.getElementsByTagName('body')

蛇形命名法(snake case)

蛇形法是全由小写字母和下划线组成,在两个单词之间用下滑线连接。例如:first_name、last_name 。这种命名法在 PHP 中很常见,比如: function_exists()

使用 C# 将大驼峰转换为小驼峰或蛇形命名法

以下两个静态方法可以分别实现大驼峰到小驼峰和蛇形命名的转换:

/// <summary>将大驼峰命名转为小驼峰命名</summary>
public static string RenameCamelCase(string str)
{
	var firstChar = str[0];

	if (firstChar == char.ToLowerInvariant(firstChar))
	{
		return str;
	}

	var name = str.ToCharArray();
	name[0] = char.ToLowerInvariant(firstChar);

	return new String(name);
}

/// <summary>将大驼峰命名转为蛇形命名</summary>
public static string RenameSnakeCase(string str)
{
	var builder = new StringBuilder();
	var name = str;
	var previousUpper = false;

	for (var i = 0; i < name.Length; i++)
	{
		var c = name[i];
		if (char.IsUpper(c))
		{
			if (i > 0 && !previousUpper)
			{
				builder.Append("_");
			}
			builder.Append(char.ToLowerInvariant(c));
			previousUpper = true;
		}
		else
		{
			builder.Append(c);
			previousUpper = false;
		}
	}
	return builder.ToString();
}

测试代码:

Console.WriteLine(RenameCamelCase("CoderBusy"));//输出: coderBusy
Console.WriteLine(RenameSnakeCase("CoderBusy"));//输出: coder_busy
赞(2) 打赏
未经允许不得转载:码农很忙 » 使用 C# 将大驼峰转换为小驼峰或蛇形命名法

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

给作者买杯咖啡

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏