Files
admin/Azaion.Common/StringExtensions.cs
T
Alex Bezdieniezhnykh 2336c15aa4 add postgres
2024-11-12 15:57:36 +02:00

28 lines
686 B
C#

using System.Text;
namespace Azaion.Common;
public static class StringExtensions
{
public static string ToSnakeCase(this string text)
{
if (string.IsNullOrEmpty(text))
return text;
if (text.Length < 2)
return text.ToLowerInvariant();
var sb = new StringBuilder();
sb.Append(char.ToLowerInvariant(text[0]));
for (int i = 1; i < text.Length; ++i) {
var c = text[i];
if(char.IsUpper(c)) {
sb.Append('_');
sb.Append(char.ToLowerInvariant(c));
} else {
sb.Append(c);
}
}
return sb.ToString();
}
}