📜  c# 转换为蛇形案例 - C# (1)

📅  最后修改于: 2023-12-03 15:13:52.765000             🧑  作者: Mango

C# 转换为蛇形案例

简介

在C#中,经常需要将驼峰式命名的变量名转换为蛇形命名或者将蛇形命名的变量名转换为驼峰式命名。本篇文章将介绍如何在C#中进行这种变量名的转换操作。

功能说明

本篇代码主要实现了两个功能:

  1. 将驼峰式命名转换为蛇形命名
  2. 将蛇形命名转换为驼峰式命名
实现
将驼峰式命名转换为蛇形命名
public static string ToSnakeCase(string input)
{
    if (string.IsNullOrEmpty(input))
    {
        return input;
    }

    var builder = new StringBuilder();
    builder.Append(char.ToLower(input[0]));

    for (int i = 1; i < input.Length; i++)
    {
        if (char.IsUpper(input[i]))
        {
            builder.Append("_");
            builder.Append(char.ToLower(input[i]));
        }
        else
        {
            builder.Append(input[i]);
        }
    }

    return builder.ToString();
}
将蛇形命名转换为驼峰式命名
public static string ToCamelCase(string input)
{
    if (string.IsNullOrEmpty(input))
    {
        return input;
    }

    var builder = new StringBuilder();
    bool nextUpperCase = false;

    for (int i = 0; i < input.Length; i++)
    {
        if (input[i] == '_')
        {
            nextUpperCase = true;
        }
        else if (nextUpperCase)
        {
            builder.Append(char.ToUpper(input[i]));
            nextUpperCase = false; 
        }
        else
        {
            builder.Append(input[i]);
        }
    }

    return builder.ToString();
}
使用示例
string camelCase = "myCamelCaseVariable";
string snakeCase = "my_snake_case_variable";

string convertedToSnakeCase = ToSnakeCase(camelCase);
string convertedToCamelCase = ToCamelCase(snakeCase);

Console.WriteLine(convertedToSnakeCase); // 输出 "my_camel_case_variable"
Console.WriteLine(convertedToCamelCase); // 输出 "mySnakeCaseVariable"
总结

本篇文章介绍了如何在C#中将驼峰式命名转换为蛇形命名或者将蛇形命名转换为驼峰式命名。这两个方法可以帮助我们在进行变量名转换时更加方便和快捷。