This is an internal function for pattern2id
that select types using
keys in index when available.
index_types
is an internal function for pattern2id
that
constructs an index of "glob" or "fixed" patterns to avoid expensive
sequential search.
search_glob(pattern, types_search, case_insensitive, index = NULL)
search_glob_multi(patterns, types_search, case_insensitive, index)
search_regex(pattern, types_search, case_insensitive)
search_regex_multi(patterns, types_search, case_insensitive)
search_fixed(pattern, types_search, index = NULL)
search_fixed_multi(patterns, types_search, index)
index_types(
pattern,
types,
valuetype = c("glob", "fixed", "regex"),
case_insensitive = TRUE
)
a "glob", "fixed" or "regex" pattern
lowercased types when case_insensitive=TRUE
, but
not used in glob and fixed matching as types are in the index.
logical; if TRUE
, ignore case when matching a
pattern
or dictionary values
index object created by index_types
a list of "glob", "fixed" or "regex" patterns
the type of pattern matching: "glob"
for "glob"-style
wildcard expressions; "regex"
for regular expressions; or "fixed"
for
exact matching. See valuetype for details.
index_types
returns a list of integer vectors containing type
IDs with index keys as an attribute