Skip to content

Instantly share code, notes, and snippets.

@awakecoding
Created January 22, 2020 01:02
Show Gist options
  • Save awakecoding/acc626741704e8885da8892b0ac6ce64 to your computer and use it in GitHub Desktop.
Save awakecoding/acc626741704e8885da8892b0ac6ce64 to your computer and use it in GitHub Desktop.
PowerShell ConvertTo-PascalCase, ConvertTo-SnakeCase
function ConvertTo-PascalCase
{
[OutputType('System.String')]
param(
[Parameter(Position=0)]
[string] $Value
)
# https://devblogs.microsoft.com/oldnewthing/20190909-00/?p=102844
return [regex]::replace($Value.ToLower(), '(^|_)(.)', { $args[0].Groups[2].Value.ToUpper()})
}
function ConvertTo-SnakeCase
{
[OutputType('System.String')]
param(
[Parameter(Position=0)]
[string] $Value
)
return [regex]::replace($Value, '(?<=.)(?=[A-Z])', '_').ToLower()
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment