# ATOMIC VECTORS:
v <- c( a=1, b=2, B=3, c=4, c2=5 )
sv <- searchable(v)
# EXTRACT:
sv[ c('a','b') ] # Normal
sv[ perl('c.?') ]
sv[ fixed('c') ]
sv[ 'x' ] # NA
sv[["a"]]
sv[[ ignore.case("a") ]]
sv[[ ignore.case("A") ]]
sv$a
sv$b
sv$B
# WITH MARGRITTR:
"b" %>% sv[[.]]
"B" %>% ignore.case %>% sv[.]
"c." %>% perl %>% sv[[.]]
"c.?" %>% perl %>% sv[.]
# REPLACEMENT:
sv[['a']] <- "first"
sv[[ perl('c.') ]] <- "third"
# sv[[ perl('c.?') ]] <- "third"
# RECURSIVE LISTS:
l <- list( a=1, b=2, c=3 )
sl <- searchable(l)
sl[["b"]]
sl[[ ignore.case("B") ]]
sl[[ "B" %>% ignore.case ]]
"b" %>% sl[[.]]
"B" %>% ignore.case %>% sl[[ . ]]Run the code above in your browser using DataLab