小编典典

将两个单词字符串中两个单词的首字母大写

all

假设我有一个两个单词的字符串,我想将它们都大写。

name <- c("zip code", "state", "final count")

Hmisc包具有capitalize将第一个单词大写的功能,但我不确定如何将第二个单词大写。的帮助页面capitalize不建议它可以执行该任务。

library(Hmisc)
capitalize(name)
# [1] "Zip code"    "State"       "Final count"

我想得到:

c("Zip Code", "State", "Final Count")

三字串呢:

name2 <- c("I like pizza")

阅读 83

收藏
2022-07-13

共1个答案

小编典典

执行大写的基本 R 函数是toupper(x). 从帮助文件中?toupper有这个功能可以满足您的需求:

simpleCap <- function(x) {
  s <- strsplit(x, " ")[[1]]
  paste(toupper(substring(s, 1,1)), substring(s, 2),
      sep="", collapse=" ")
}

name <- c("zip code", "state", "final count")

sapply(name, simpleCap)

     zip code         state   final count 
   "Zip Code"       "State" "Final Count"

编辑 这适用于任何字符串,无论字数如何:

simpleCap("I like pizza a lot")
[1] "I Like Pizza A Lot"
2022-07-13