簡體   English   中英

如何僅將字符串的第一個字符保留在空格之前,並將所有字符保留在R中

[英]How to keep only the first Character of a string before space, and all the characters after space in R

我有以下數據data.table

library(data.table)

dt <- data.table(c('Female 18 - 24', 'Male 18+', 'People 18 -54'))

我如何將其轉換為

dt <- data.table(c('F 18 - 24', 'M 18+', 'P 18 -54'))使用regex

 gsub('(^[A-Z])[A-Za-z]+\\s(*.)','\\1 \\2',c('Female 18 - 24', 'Male 18+', 'People 18 -54'))
 [1] "F 18 - 24" "M 18+"     "P 18 -54" 

  • (^[AZ])將第一個字母作為group1
  • [A-Za-z]+\\\\s加上空格后[A-Za-z]+\\\\s任意數量的小寫字母
  • (*.)取一個空格作為group2
  • '\\\\1 \\\\2'最后,返回由空格分隔的group1和group2

  • require(data.table)
    require(stringi)
    dt <- data.table(V1=c('Female 18 - 24', 'Male 18+', 'People 18 -54'))
    dt[,V2:= stri_replace_first_regex(V1,"(?<=\\w)\\w+","")]  
    dt
    
               V1        V2
    1: Female 18 - 24    F 18 - 24
    2: Male 18+          M 18+
    3: People 18 -54     P 18 -54
    

    暫無
    暫無

    聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

     
    粵ICP備18138465號  © 2020-2024 STACKOOM.COM