# Case converters

#### Malte Grosser

#### 2023-08-27

## Basic examples

Default case is snake case

    library(snakecase)
    to_any_case("veryComplicatedString")
    ## [1] "very_complicated_string"

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"  "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, mixed and sentence are based on parsed case

    to_any_case("THISIsHOW IAmPARSED!", case = "parsed")
    ## [1] "THIS_Is_HOW_I_Am_PARSED"

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:

    dput(to_any_case(c("SomeBAdInput", "someGoodInput")))
    ## c("some_b_ad_input", "some_good_input")

If you are interested in the design of this package, you can find more information on its github page.