R根据模式拆分句子
R Split sentence based on pattern
我需要根据地址格式拆分句子。以下是我面临的问题的可重现示例。
s <- c("Junipero Sierra Room 9001 coals ave","patio room2200 virginia beach ave")
目前,这是我正在使用的
gsub(".*([A-z]{1,}[0-9]{2,6})|.*([A-z]{1,} [0-9]{2,6})", "\1",s)
这是我得到的,
[1] " coals ave" "m2200 virginia beach ave"
但这就是我想要的
[1] "9001 coals ave" "2200 virginia beach ave"
s <- c("Junipero Sierra Room 9001 coals ave","patio room2200 virginia beach ave")
get.String=function(x){
sx=unlist(strsplit(x,""))
st=grep("[0-9]",sx)[1]
x=substring(x,st,nchar(x))
return(x)
}
sapply(s,get.String)
看来你只想剪掉[0-9]{2,6}
之前的所有内容:
> gsub(".*?([0-9]{2,6})", "\1", s)
[1] "9001 coals ave" "2200 virginia beach ave"
我需要根据地址格式拆分句子。以下是我面临的问题的可重现示例。
s <- c("Junipero Sierra Room 9001 coals ave","patio room2200 virginia beach ave")
目前,这是我正在使用的
gsub(".*([A-z]{1,}[0-9]{2,6})|.*([A-z]{1,} [0-9]{2,6})", "\1",s)
这是我得到的,
[1] " coals ave" "m2200 virginia beach ave"
但这就是我想要的
[1] "9001 coals ave" "2200 virginia beach ave"
s <- c("Junipero Sierra Room 9001 coals ave","patio room2200 virginia beach ave")
get.String=function(x){
sx=unlist(strsplit(x,""))
st=grep("[0-9]",sx)[1]
x=substring(x,st,nchar(x))
return(x)
}
sapply(s,get.String)
看来你只想剪掉[0-9]{2,6}
之前的所有内容:
> gsub(".*?([0-9]{2,6})", "\1", s)
[1] "9001 coals ave" "2200 virginia beach ave"