R substr() 函数 - 提取和替换子串
R substr() 函数用于从字符串中提取或替换指定位置的子串。
substring() 是 substr() 的别名,行为基本相同。
substr() 函数语法格式如下:
substr(x, start, stop) substring(text, first, last = 1000000L)
参数说明:
x/text 输入字符串或字符串向量。
start/first 起始位置(从 1 开始)。
stop/last 结束位置。
实例
text <- "Hello RUNOOB"
# 提取第 2 到第 5 个字符
result1 <- substr(text, 2, 5)
print(result1)
# 提取向量中的子串
words <- c("apple", "banana", "cherry")
result2 <- substr(words, 1, 3)
print(result2)
# 替换子串
str <- "Hello RUNOOB"
substr(str, 7, 12) <- "WORLD"
print(str)
# 提取第 2 到第 5 个字符
result1 <- substr(text, 2, 5)
print(result1)
# 提取向量中的子串
words <- c("apple", "banana", "cherry")
result2 <- substr(words, 1, 3)
print(result2)
# 替换子串
str <- "Hello RUNOOB"
substr(str, 7, 12) <- "WORLD"
print(str)
执行以上代码输出结果为:
[1] "ello" [1] "app" "ban" "che" [1] "Hello WORLD"
substr() 常用于提取固定格式的编码信息:
实例
# 提取身份证号中的出生年份(第 7-10 位)
id_numbers <- c("110101199001011234", "310105198505067890")
birth_years <- substr(id_numbers, 7, 10)
print(paste("出生年份:", birth_years))
id_numbers <- c("110101199001011234", "310105198505067890")
birth_years <- substr(id_numbers, 7, 10)
print(paste("出生年份:", birth_years))
执行以上代码输出结果为:
[1] "出生年份: 1990" "出生年份: 1985"

R 语言实例