R 字符串

在R语言中的单引号或双引号对中写入的任何值都被视为字符串。 R语言存储的每个字符串都在双引号内,即使是使用单引号创建的依旧如此。

在字符串构造中应用的规则

  • 在字符串的开头和结尾的引号应该是两个双引号或两个单引号。它们不能被混合。

  • 双引号可以插入到以单引号开头和结尾的字符串中。

  • 单引号可以插入以双引号开头和结尾的字符串。

  • 双引号不能插入以双引号开头和结尾的字符串。

  • 单引号不能插入以单引号开头和结尾的字符串。

有效字符串的示例

以下示例阐明了在R语言中创建字符串的规则。

  1. a <- 'Start and end with single quote'
  2. print(a)
  3. b <- "Start and end with double quotes"
  4. print(b)
  5. c <- "single quote ' in between double quotes"
  6. print(c)
  7. d <- 'Double quotes " in between single quote'
  8. print(d)

当运行上面的代码,我们得到以下输出 -

  1. [1] "Start and end with single quote"
  2. [1] "Start and end with double quotes"
  3. [1] "single quote ' in between double quote"
  4. [1] "Double quote " in between single quote"

无效字符串的示例

  1. e <- 'Mixed quotes"
  2. print(e)
  3. f <- 'Single quote ' inside single quote'
  4. print(f)
  5. g <- "Double quotes " inside double quotes"
  6. print(g)

当我们运行脚本失败给下面的结果。

  1. ...: unexpected INCOMPLETE_STRING
  2. .... unexpected symbol
  3. 1: f <- 'Single quote ' inside
  4. unexpected symbol
  5. 1: g <- "Double quotes " inside

字符串操作

连接字符串 - paste()函数

R语言中的许多字符串使用paste()函数组合。 它可以采取任何数量的参数组合在一起。

语法

对于粘贴功能的基本语法

  1. paste(..., sep = " ", collapse = NULL)

以下是所使用的参数的说明

  • …表示要组合的任意数量的自变量。

  • sep表示参数之间的任何分隔符。它是可选的。

  • collapse用于消除两个字符串之间的空格。 但不是一个字符串的两个字内的空间。

实例

  1. a <- "Hello"
  2. b <- 'How'
  3. c <- "are you? "
  4. print(paste(a,b,c))
  5. print(paste(a,b,c, sep = "-"))
  6. print(paste(a,b,c, sep = "", collapse = ""))

当我们执行上面的代码,它产生以下结果:

  1. [1] "Hello How are you? "
  2. [1] "Hello-How-are you? "
  3. [1] "HelloHoware you? "

格式化数字和字符串 - format()函数

可以使用format()函数将数字和字符串格式化为特定样式。

语法

格式化函数的基本语法

  1. format(x, digits, nsmall, scientific, width, justify = c("left", "right", "centre", "none"))

以下是所使用的参数的描述

  • x是向量输入。

  • digits是显示的总位数。

  • nsmall是小数点右边的最小位数。

  • 科学设置为TRUE以显示科学记数法。

  • width指示通过在开始处填充空白来显示的最小宽度。

  • justify是字符串向左,右或中心的显示。

实例

  1. # Total number of digits displayed. Last digit rounded off.
  2. result <- format(23.123456789, digits = 9)
  3. print(result)
  4. # Display numbers in scientific notation.
  5. result <- format(c(6, 13.14521), scientific = TRUE)
  6. print(result)
  7. # The minimum number of digits to the right of the decimal point.
  8. result <- format(23.47, nsmall = 5)
  9. print(result)
  10. # Format treats everything as a string.
  11. result <- format(6)
  12. print(result)
  13. # Numbers are padded with blank in the beginning for width.
  14. result <- format(13.7, width = 6)
  15. print(result)
  16. # Left justify strings.
  17. result <- format("Hello", width = 8, justify = "l")
  18. print(result)
  19. # Justfy string with center.
  20. result <- format("Hello", width = 8, justify = "c")
  21. print(result)

当我们执行上面的代码,它产生以下结果:

  1. [1] "23.1234568"
  2. [1] "6.000000e+00" "1.314521e+01"
  3. [1] "23.47000"
  4. [1] "6"
  5. [1] " 13.7"
  6. [1] "Hello "
  7. [1] " Hello "

计算字符串中的字符数 - nchar()函数

此函数计算字符串中包含空格的字符数。

语法

nchar()函数的基本语法

  1. nchar(x)

以下是所使用的参数的描述

  • x是向量输入。

实例

  1. result <- nchar("Count the number of characters")
  2. print(result)

当我们执行上面的代码,它产生以下结果:

  1. [1] 30

更改case - toupper()和tolower()函数

这些函数改变字符串的字符的大小写。

语法

toupper()和tolower()函数的基本语法

  1. toupper(x)
  2. tolower(x)

以下是所使用的参数的描述

  • x是向量输入。

实例

  1. # Changing to Upper case.
  2. result <- toupper("Changing To Upper")
  3. print(result)
  4. # Changing to lower case.
  5. result <- tolower("Changing To Lower")
  6. print(result)

当我们执行上面的代码,它产生以下结果:

  1. [1] "CHANGING TO UPPER"
  2. [1] "changing to lower"

提取字符串的一部分 - substring()函数

此函数提取字符串的部分。

语法

substring()函数的基本语法

  1. substring(x,first,last)

以下是所使用的参数的描述

  • x是字符向量输入。

  • 首先是要提取的第一个字符的位置。

  • last是要提取的最后一个字符的位置。

实例

  1. # Extract characters from 5th to 7th position.
  2. result <- substring("Extract", 5, 7)
  3. print(result)

当我们执行上面的代码,它产生以下结果:

  1. [1] "act"