从列表中选择元素

时间:2011-08-17 03:20:39

标签: regex r grep

我在列表中有一个名单列表,例如:

site<-list("site2-site22" ,"site2-site45", "site4-site2", "site6-site2",
           "site9-site27", "site20-site150", "site25-site272", "site32-site47",
           "site62-site74", "site272-site280")

从列表中,我需要选择那些在其之前或之后具有site2的元素 -

当我使用grep命令时如下:

grep("site2",site,value=T)

它为我提供了从site2开始的所有值,即我的结果如下:

"site2-site22"    "site2-site45"    "site4-site27"    "site9-site27" 
"site20-site150"  "site25-site272"  "site272-site280"

我怎样才能从列表中选择site2?

2 个答案:

答案 0 :(得分:4)

我确信使用正则表达式还有很多其他方法可以做到这一点,但这个简单的方法有效:

grep("^site2-|-site2$",site,value=T)

答案 1 :(得分:1)

grep("site2-|-site2$",site,value=T)