R基于模式的分裂句子

时间:2018-03-19 19:22:53

标签: r gsub

我需要根据地址模式拆分一个句子。下面是我正面临的问题的可重现样本。

 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"

2 个答案:

答案 0 :(得分:1)

看起来你只想在[0-9]{2,6}之前切断所有内容:

> gsub(".*?([0-9]{2,6})", "\\1", s)
[1] "9001 coals ave"          "2200 virginia beach ave"

答案 1 :(得分:0)

dplyr