现在位置: 首页 > R 教程 > 正文

R nchar() 函数 - 获取字符数量

R 语言实例 R 语言实例

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")))

执行以上代码输出结果为:

[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))

执行以上代码输出结果为:

[1] "截断结果:"
[1] "这是一个很长的描..." "短文本"

R 语言实例 R 语言实例