R nchar() 函数 - 获取字符数量
R nchar() 函数用于计算字符串中字符的数量。
nchar() 可以处理中文等多字节字符,是字符串处理中最基础的函数之一。
nchar() 函数语法格式如下:
nchar(x, type = "chars")
参数说明:
x 输入字符串向量。
type 计数类型:"chars"(字符数)、"bytes"(字节数)、"width"(显示宽度)。
实例
# 英文和中文
text_en <- "Hello RUNOOB"
text_cn <- "你好世界"
print(paste("英文:", nchar(text_en)))
print(paste("中文:", nchar(text_cn)))
# 向量中的字符数
words <- c("R", "Python", "JavaScript", "Go")
print("各语言的字符数:")
print(nchar(words))
# 检查字节数和字符数的区别
text <- "Hello 世界"
print(paste("字符数:", nchar(text, type = "chars")))
print(paste("字节数:", nchar(text, type = "bytes")))
text_en <- "Hello RUNOOB"
text_cn <- "你好世界"
print(paste("英文:", nchar(text_en)))
print(paste("中文:", nchar(text_cn)))
# 向量中的字符数
words <- c("R", "Python", "JavaScript", "Go")
print("各语言的字符数:")
print(nchar(words))
# 检查字节数和字符数的区别
text <- "Hello 世界"
print(paste("字符数:", nchar(text, type = "chars")))
print(paste("字节数:", nchar(text, type = "bytes")))
执行以上代码输出结果为:
[1] "英文: 12" [1] "中文: 4" [1] "各语言的字符数:" [1] 1 6 10 2 [1] "字符数: 8" [1] "字节数: 13"
nchar() 结合 substr() 可以实现字符串截断:
实例
# 截断过长字符串并添加省略号
texts <- c("这是一个很长的描述文本需要截断",
"短文本")
truncate <- function(x, max_len = 10) {
ifelse(nchar(x) > max_len,
paste0(substr(x, 1, max_len), "..."),
x)
}
print("截断结果:")
print(truncate(texts, max_len = 8))
texts <- c("这是一个很长的描述文本需要截断",
"短文本")
truncate <- function(x, max_len = 10) {
ifelse(nchar(x) > max_len,
paste0(substr(x, 1, max_len), "..."),
x)
}
print("截断结果:")
print(truncate(texts, max_len = 8))
执行以上代码输出结果为:
[1] "截断结果:" [1] "这是一个很长的描..." "短文本"

R 语言实例