Default case is snake case
Dots and other special characters may have a special intention
When it is clear that they are separators, you can supply them as a regex to the sep_in
argument
to_any_case(names(iris), sep_in = "\\.")
## [1] "sepal_length" "sepal_width" "petal_length" "petal_width"
## [5] "species"
This is especially handy, when special characters have a meaning as a separator or for example as a decimal mark
Of course other cases are supported (case
) and separators can be adjusted (sep_out
)
to_any_case(names(iris), sep_in = "\\.", case = "upper_camel", sep_out = " ")
## [1] "Sepal Length" "Sepal Width" "Petal Length" "Petal Width"
## [5] "Species"
And you might want to remove special characters along the way
to_any_case("Doppelgänger is originally german",
transliterations = "german", case = "upper_camel")
## [1] "DoppelgaengerIsOriginallyGerman"
All of the cases like: snake, lower_camel, upper_camel, all_caps, lower_upper, upper_lower and mixed are based on parsed case
Shortcut wrappers like to_snake_case
, to_lower_camel_case
etc. are available.
Be aware that automatic case conversion depends on the input string and it is recommended to verify the results. So you might want to pipe these into dput()
(and hardcode name changes instead of blindly trusting to_any_case()
’s output)
If you are interested in the design of this package, you can find more information on its github page.