Generate function to validate regular expressions.
validate( pattern, single =TRUE, trim =FALSE, clean =FALSE, dictionary = getOption("regex.library"))
Arguments
pattern: A character string containing a regular expression (or character string for fixed = TRUE) to be matched in the given character vector.
single: logical. If TRUE only returns true if the output string is of length one. If FALSE multiple strings and multiple outputs are accepted.
trim: logical. If TRUE removes leading and trailing white spaces.
clean: trim logical. If TRUE extra white spaces and escaped character will be removed.
dictionary: A dictionary of canned regular expressions to search within if pattern begins with "@rm_".
Returns
Returns a function that operates typical of other qdapRegex
rm_XXX functions but with user defined defaults.
Warning
validate uses qdapRegex's built in regular expressions. As this patterns are used for text analysis they tend to be flexible and thus liberal. The user may wish to define more conservative validation regular expressions and supply to pattern.
Examples
## Single element emailvalid_email <- validate("@rm_email")valid_email(c("tyler.rinker@gmail.com","@trinker"))## Multiple elementsvalid_email_1 <- validate("@rm_email", single=FALSE)valid_email_1(c("tyler.rinker@gmail.com","@trinker"))## single element addressvalid_address <- validate("@rm_city_state_zip")valid_address("Buffalo, NY 14217")valid_address("buffalo,NY14217")valid_address("buffalo NY 14217")valid_address2 <- validate(paste0("(\\b([A-Z][\\w-]*)+),","\\s([A-Z]{2})\\s(?<!\\d)\\d{5}(?:[ -]\\d{4})?\\b"))valid_address2("Buffalo, NY 14217")valid_address2("buffalo, NY 14217")valid_address2("buffalo,NY14217")valid_address2("buffalo NY 14217")