用R在字串中提取匹配的部分

2022-09-15 04:54:12 字數 509 閱讀 4732

例如在aaaa12***x中提取12,在參考了stackoverflow後比較方便的大致有以下幾種方法:

利用sub跟gsub

sub(".*?([0-9]+).*", "\\1", "aaa12xx99",perl=true) #其中\\1指括號中匹配的部分

gsub("[^0-9]", "", "aaa12***x")

regmatchs法

txt <- "aaa12***"

m <- regexpr("[0-9]+",txt)

regmatches(txt,m)

利用stringr中的str_extract函式 (stringr包的處理字串功能很強大,推薦學習下)

library(stringr)

str_extract("aaa12***", "[0-9]+")

hive 從url中提取需要的部分字串

事情是這樣的,hive的a表中,有url這樣的乙個字段,我想要提取這個欄位中的某一部分 這不就是擷取字串嘛 但是substring肯定是滿足不了我的需求的,自己寫hive的udf也不太現實 用最簡單的方式完成任務,才會讓後來的維護變得更加方便,否則除了維護sql還要維護一堆udf,那才叫可怕 因此我...

從字串中提取數字

下面程式將字串中的連續數字提取出來,並存放到一維陣列中。比如說乙個字串 a284twx234 je3432 把 284 234 3432 這3個連續數字提取出來,分別存放到a 0 a 1 a 2 中。include include include int main buf i 0 sscanf bu...

從字串中提取整數

首先說一下我要做的事情 從乙個txt檔案中 存著乙個矩陣 從這個檔案中提取出這個檔案中的整數。矩陣 1 2 3 4 5 6 7 8 0 1 8 7 3 8 2 9 之前用的函式是fgets char fgets char s,int n,file stream 引數 s 字元型指標,指向儲存讀入資料...