R_字符串替換函數(shù)(正則)

常用函數(shù)

  1. grep、 grepl、regexpr、gregexpr and regexec
  2. sub、gsub。

參數(shù)說明

  • pattern----匹配正則表達(dá)式,或者字符串(當(dāng)fixed = TRUE)
  • x,text----需要匹配的字符向量(data)
  • ignore.case ----是否忽略大小寫。FALSE:否。TURE:是
  • perl ----logical。是否用兼容模式正則?--搞不懂,默認(rèn)
  • value----如果為FALSE,則返回一個包含grep確定的匹配的(整數(shù))索引的向量,如果為TRUE,則返回一個包含匹配元素本身的向量
  • fixed----logical。如果為TURE,直接匹配字符串。
  • useBytes----如果為TURE,按照字節(jié)匹配,而不是字符。
  • invert----logical。如果為TURE,返回不匹配元素的索引或者值。
  • replacement----替代字符串。

模式說明

  1. fixed = TRUE: 精確匹配。
  2. perl = TRUE: use Perl-style regular expressions.
  3. fixed = FALSE, perl = FALSE: use POSIX 1003.2 extended regular expressions (the default).默認(rèn),使用未知的東東--。

sub

描述:只替換第一個查詢的字符串。

    #用法:
    >>sub(pattern, replacement, x, ignore.case = FALSE, perl = FALSE,
       fixed = FALSE, useBytes = FALSE)     
    #樣例:
    data = fread("data.csv")
    names(data)
    #*>>user_date
    data$user_date
    #*>>2018/10/28 需要替換成2018-10-28
    data = data[,user_date := sub('/','-',data)]$user_date
    #*>>2018-10/28

gsub

描述:替換所有的字符串。

    >> gsub(pattern, replacement, x, ignore.case = FALSE, perl = FALSE,
 fixed = FALSE, useBytes = FALSE)


    data = fread("data.csv")
    names(data)
    #*>>user_date
    data$user_date
    #*>>2018/10/28 需要替換成2018-10-28
    data[,user_date := gsub('/','-',data)]$user_date
    #*>>2018-10-28

grep

描述:返回匹配數(shù)據(jù)的位置。

    >> grep(pattern, x, ignore.case = FALSE, perl = FALSE, value = FALSE,
 fixed = FALSE, useBytes = FALSE, invert = FALSE)
  
    grep('^flag_',names(data))
    >>[1]   10   19   50   65   79
     [6]  153  154  298  326  426
    [11] 1346

grepl

描述:返回所有匹配的邏輯值。

    >> grepl(pattern, x, ignore.case = FALSE, perl = FALSE,
  fixed = FALSE, useBytes = FALSE)

     grepl('^flag_',names(data))
    >> [1] FALSE FALSE FALSE FALSE
         [5] FALSE FALSE FALSE FALSE
         [9] FALSE  TRUE FALSE FALSE
        [13] FALSE FALSE FALSE FALSE...
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容