作者: Gjerry 2020-11-21 03:31:00
可以试试看用 % 符号来切割字串,再找你要的字串片段。另外可以试着去查 regular expression ,以及grep 等 functions,或是 stringr package 的用法
作者:
cywhale (cywhale)
2020-11-21 19:38:00y <-regexpr('%3Dlink-(?:[a-zA-Z0-9\\-]+)%2F[0-9]+',x)y值156 你打y还会显示attr(,"match.length") 27或者attributes(y)$match.length得到27 总长度 另外这里用了两个'饰词't1<-nchar('%3Dlink-')为8 %2F为3设给t2啊要分两次t<-regexpr('%3Dlink-(?:[a-zA-Z0-9\\-]+)%',xsubstr(x, t+t1, t+attributes(t)$match.length-2)会得到"202010-happy" 一样抓它的长度t3<-nchar(...) 得到12substr(x, y+attributes(t)$match.length+nchar(t2)+1,y+attributes(y)$match.length-1) 就会抓到'1234'抱歉一边写用不到t3但要分两次,或抓一次用%2F做strsplit
作者:
chuubbyy (byetos)
2020-11-22 00:30:00str1 <- str_extract(string, '(?<=%3Dlink-).+(?=%2F)')str2 <- str_extract(string, paste0('(?<=', str1, '%2F).+(?=&)'))