charmatch
Partial String Matching
Description
charmatch
seeks matches for the elements of its first argument among those of its second.
Usage
charmatch(x, table, nomatch = NA_integer_)
Arguments
x | the values to be matched: converted to a character vector by |
table | the values to be matched against: converted to a character vector. Long vectors are not supported. |
nomatch | the (integer) value to be returned at non-matching positions. |
Details
Exact matches are preferred to partial matches (those where the value to be matched has an exact match to the initial part of the target, but the target is longer).
If there is a single exact match or no exact match and a unique partial match then the index of the matching value is returned; if multiple exact or multiple partial matches are found then 0
is returned and if no match is found then nomatch
is returned.
NA
values are treated as the string constant "NA"
.
Value
An integer vector of the same length as x
, giving the indices of the elements in table
which matched, or nomatch
.
Author(s)
This function is based on a C function written by Terry Therneau.
See Also
startsWith
for another matching of initial parts of strings; grep
or regexpr
for more general (regexp) matching of strings.
Examples
charmatch("", "") # returns 1 charmatch("m", c("mean", "median", "mode")) # returns 0 charmatch("med", c("mean", "median", "mode")) # returns 2
Copyright (©) 1999–2012 R Foundation for Statistical Computing.
Licensed under the GNU General Public License.