【发布时间】:2019-09-09 05:51:36
【问题描述】:
想要设置一个函数,将所有字符串的大小写从 UPPER 更改为小写,再将小写更改为 UPPER。所以“这是一个测试”将导致“这是一个测试”。我尝试单独使用 toupper 和 tolow 没有成功。
【问题讨论】:
标签: r
想要设置一个函数,将所有字符串的大小写从 UPPER 更改为小写,再将小写更改为 UPPER。所以“这是一个测试”将导致“这是一个测试”。我尝试单独使用 toupper 和 tolow 没有成功。
【问题讨论】:
标签: r
1) 像这样使用chartr:
chartr("A-Za-z", "a-zA-Z", "THIS is a TEST")
## [1] "this IS A test"
2) 没有那么简单,但仍然是基于 R 和一行:
gsub("([A-Z])|([a-z])", "\\L\\1\\U\\2", "THIS is a TEST", perl = TRUE)
## [1] "this IS A test"
【讨论】:
另一种可能性涉及库snakecase:
to_any_case("THIS is a TEST", case = "swap")
[1] "this IS A test"
【讨论】: