
multigsub
- A wrapper for gsub
that takes a vector
of search terms and a vector or single value of replacements.
sub_holder
- This function holds the place for particular character
values, allowing the user to manipulate the vector and then revert the place
holders back to the original values.
multigsub(pattern, replacement, text.var, leadspace = FALSE,
trailspace = FALSE, fixed = TRUE, trim = TRUE, order.pattern = fixed,
...)mgsub(pattern, replacement, text.var, leadspace = FALSE, trailspace = FALSE,
fixed = TRUE, trim = TRUE, order.pattern = fixed, ...)
sub_holder(pattern, text.var, alpha.type = TRUE, ...)
Character string to be matched in the given character vector.
Character string equal in length to pattern or of length one which are a replacement for matched pattern.
The text variable.
logical. If TRUE
inserts a leading space in the
replacements.
logical. If TRUE
inserts a trailing space in the
replacements.
logical. If TRUE
, pattern is a string to be matched as is.
Overrides all conflicting arguments.
logical. If TRUE
leading and trailing white spaces are
removed and multiple white spaces are reduced to a single white space.
logical. If TRUE
and fixed = TRUE
, the
pattern
string is sorted by number of characters to prevent substrings
replacing meta strings (e.g., pattern = c("the", "then")
resorts to
search for "then" first).
Additional arguments passed to gsub
.
logical. If TRUE
alpha (lower case letters) are
used for the key. If FALSE
numbers are used as the key.
multigsub
- Returns a vector with the pattern replaced.
sub_holder
- Returns a list with the following:
keyed place holder character vector
A function used to revert back to the original values
# NOT RUN {
## ======================
## `mgsub` Function
## ======================
multigsub(c("it's", "I'm"), c("it is", "I am"), DATA$state)
mgsub(c("it's", "I'm"), c("it is", "I am"), DATA$state)
mgsub("[[:punct:]]", "PUNC", DATA$state, fixed = FALSE)
## ======================
## `sub_holder` Function
## ======================
## `alpha.type` as TRUE
(fake_dat <- paste(emoticon[1:11,2], DATA$state))
(m <- sub_holder(emoticon[,2], fake_dat))
m$unhold(strip(m$output))
# With Stemming
m$unhold(stemmer(strip(m$output), capitalize = FALSE))
## `alpha.type` as FALSE (numeric keys)
vowels <- LETTERS[c(1, 5, 9, 15, 21)]
(m2 <- sub_holder(vowels, toupper(DATA$state), alpha.type = FALSE))
m2$unhold(gsub("[^0-9]", "", m2$output))
mtabulate(strsplit(m2$unhold(gsub("[^0-9]", "", m2$output)), ""))
# }
Run the code above in your browser using DataLab