R语言--字符处理(stringr包)

Python012

R语言--字符处理(stringr包),第1张

stringr 包中的大部分函数具有统一风格的命名方式,以 str_ 开头,正则表达式也完全适用该包。

字符串拼接函数 str_c ,与R语言自带的 paste 和 paste0 函数具有相同的作用。

字符计数函数 str_count ,计算字符串中指定字符的个数。

字符检查函数 str_detect ,检查字符串中是否包含指定字符,返回逻辑向量。

字符复制函数 str_dup ,将字符向量重复若干次,返回重复后的字符向量。

字符提取函数 str_extract 和 str_extract_all ,对字符串进行提取, str_extract_all 函数返回所有的匹配结果。

字符串格式化函数 str_glue ,用花括号 {} 表示占位符,括号内的变量被替换成全局变量值。

字符串长度函数 str_length ,计算字符串长度。

字符位置提取函数 str_locate 和 str_locate_all ,返回匹配到的字符的位置。

字符匹配函数 str_match 和 str_match_all 与字符提取函数 str_extract 类似,返回匹配到的字符,不同之处在于返回格式。

字符补齐函数 str_pad ,用于在字符串中添加单个字符,可选择添加的位置,在参数 side 中进行设置。

字符删除函数 str_remove 和 str_remove_all ,用于删除字符串中的部分字符。

字符替换函数 str_replace 、 str_replace_all 和 str_replace_na ,用于替换字符串中的部分字符。

字符排序函数 str_sort 和 str_order ,对字符向量进行排序。

字符分割函数 str_split 和 str_split_fixed ,对字符串进行分割。

字符过滤函数 str_sub 和 str_subset , str_sub 函数通过指定开始和结束位置,过滤出字符串的部分字符串。 str_subset 函数通过匹配模式,过滤出满足模式的字符串。

stringr 包中其他的有用函数,用于常见的字符处理。

取字符数量的函数

length与nchar不同,length是取向量的长度

字符替换

字符串粘合函数

paste在不指定分割符的情况下,默认分割符是空格

paste0在不指定分割符的情况下,默认分割符是空

字符串截取函数

字符串替换

gsub替换匹配到的全部

sub 替换匹配到的第一个

字符串匹配

grep函数返回的是索引值

grepl函数返回的是逻辑值

match:匹配两个向量,返回x中存在的返回索引或TRUE、FALSE

match函数使用格式有如下两种:

参数详解

第一种方便设置参数,返回x中元素在table中的位置

第二种简洁,返回x中每个元素在table中是否存在

pmatch函数是一个部分匹配函数, 依次从x里面挑出元素, 对照table进行匹配, 若匹配上则剔除匹配上的值, 不再参与下次匹配, duplicate.ok可设置是否剔除对于某一个元素, 匹配一共分成三步:

如果可以完全匹配, 则认为匹配上了, 返回table中的位置

不满足上述条件, 如果是唯一部分匹配, 则返回table中的位置

不满足上述条件, 则认为没有值与其匹配上.

pmatch函数的格式

pmatch(x, table, nomatch = NA_integer_, duplicates.ok = FALSE)