2015-05-09 41 views

回答

2

你也可以做

sub('^[^p]*p', '', df1$v1) 
#[1] "1" "30" "20" "60" 

或者

sub('p.*$', '', df1$v1) 
#[1] "m0" "m5" "m11" "m59" 
4

您可以使用gsub

# Remove everything before p 
gsub("^.*?p(.*)","\\1",df1$v1,perl=TRUE) 
#[1] "1" "30" "20" "60" 

# Remove everything after p 
gsub("(.*)?p.*$","\\1",df1$v1,perl=TRUE) 
# [1] "m0" "m5" "m11" "m59" 
+0

謝謝@scoa – jpinelo

1

P上之後:

gsub('.*(?<=p)(\\d+)','\\1',df1$v1,perl=T) 

第106頁:

gsub('(.*)(?=p).*','\\1',df1$v1,perl=T) 
相關問題