Learn R Programming

Ecfun (version 0.3-2)

grepNonStandardCharacters: grep for nonstandard characters

Description

Return the indices of elements of x containing characters that are not in standardCharacters.

Usage

grepNonStandardCharacters(x, value=FALSE,
   standardCharacters=c(letters, LETTERS, ' ',
    '.', ',',  0:9, '\"', "\'", '-', '_', '(', 
    ')', '[', ']', '\n'),
   ... )

Value

an integer vector identifying all elements of x containing a character not in

standardCharacters.

Arguments

x

character vector in which it is desired to identify elements containing characters not in standardCharacters.

value

logical: TRUE to return the values found in x, FALSE to return their indices.

standardCharacters

Characters to overlook in x to identify anything not in standardCharacters.

...

optional arguments for regexpr

Author

Spencer Graves

Details

1. x. <- strsplit(x, ''): convert the input character vector to a list of vectors of character vectors with nchar(x.[i]) == 1 for i in 1:length(x).

2. sapply(x., ...) to identify all elements for which any element of x[[i]] is not in standardCharacters.

See Also

stringi-package grep, regexpr, subNonStandardCharacters, showNonASCII

Examples

Run this code
Names <- c('Raul', 'Ra`l', 'Torres,Raul', 'Torres, Raul')
#  confusion in character sets can create
#  names like Names[2]

chk <- grepNonStandardCharacters(Names)

stopifnot(
all.equal(chk, 2)
)

chkv <- grepNonStandardCharacters(Names, TRUE)

stopifnot(
all.equal(chkv, Names[2])
)

Run the code above in your browser using DataLab