近来做作业用到R语言,发现R语言有一些非常简单但是有用的字符串操作,这里将我所用到的简单总结一下。

    1. grep()函数

        与linux中的shell命令grep类似,就是查询一个字符串中模式串,其形式化定义中参数比较多,一般我们要用到的其实可以简化为:grep(pattern, text)

        其中pattern是你需要匹配的模式串,而text是对象文本,举个例子吧:

        > grep('bc','abcdefg')
           [1] 1       

        [1]代表查找成功,为了解释后面那个1是什么意思我们再来看一个例子:

         str<-c("abcbcd","acbde","abc","cdefgh")
         > grep('bc',str)
         [1] 1 3

        str是一个字符串向量,而使用grep之后,返回了1,3,很明显,代表向量str的第一个和第三个分量中包含模式串bc

   

    2. strsplit()函数

        string<-'abcdefg'
        > strsplit(string, 'bc')
        [[1]]
        [1] "a"    "defg"

        从这个例子应该看出strsplit用法其实很简单,第一个参数是待分割的字符串,第二个参数是要分割点,得到的结果就是分割后的字符串

 

   3. gsub()函数

       这个函数的用法很简单,一般我们的用法是:gsub(pattern, replacement, x),其中pattern是我们需要提取的字串的模式,replacement代表把其他的部分填充为什么,而x是原来的字符串,下面看个例子:

       > string<-'dasfasd893284dasf'
       > gsub('[^0-9]','',string)
      [1] "893284"
      > gsub('[^0-9]','a',string)
      [1] "aaaaaaa893284aaaa"

   以上总结了几个实际使用中碰到的非常简单的R语言字符操作的例子,配合使用这三个函数可以实现很强大的功能。