Camel case and snake case: Difference between revisions

m
→‎{{header|Raku}}: eat our own dog-food
(→‎{{header|Raku}}: Add a Raku example)
m (→‎{{header|Raku}}: eat our own dog-food)
Line 34:
 
 
sub to_snake_case (Str $ssnake_case_string is copy) {
$ssnake_case_string.=trim;
return $ssnake_case_string if $ssnake_case_string.contains: / \s | '/' /;
$ssnake_case_string.=subst: / <after <:Ll>> (<:Lu>|<:digit>+) /, {'_' ~ $0.lc}, :g;
$ssnake_case_string.=subst: / <after <:digit>> (<:Lu>) /, {'_' ~ $0.lc}, :g;
}
 
sub toCamelCase (Str $scamelCaseString is copy) {
$scamelCaseString.=trim;
return $scamelCaseString if $scamelCaseString.contains: / \s | '/' /;
$scamelCaseString.=subst: / ('_') (\w) /, {$1.uc}, :g;
}
 
sub to-kebab-case (Str $skebab-case-string is copy) {
$skebab-case-string.=trim;
return $skebab-case-string if $skebab-case-string.contains: / \s | '/' /;
$skebab-case-string.=subst: / ('_') (\w) /, {'-' ~ $1.lc}, :g;
$skebab-case-string.=subst: / <after <:Ll>> (<:Lu>|<:digit>+) /, {'-' ~ $0.lc}, :g;
$skebab-case-string.=subst: / <after <:digit>> (<:Lu>) /, {'-' ~ $0.lc}, :g;
}
 
10,327

edits