Replacing with regular expressions
Now, you've mastered matching with backreferences, you'll build up to replacing with backreferences, but first let's review str_replace()
now that you've got regular expressions under your belt.
Remember str_replace()
takes three arguments, string
a vector of strings to do the replacements in, pattern
that identifies the parts of strings to replace and replacement
the thing to use as a replacement.
replacement
can be a vector, the same length as string
, each element specifies the replacement to be used in each string. Let's practice by anonymizing some of the contact objects you've seen so far.
This is a part of the course
“String Manipulation with stringr in R”
Exercise instructions
Text containing phone numbers has been pre-defined in a variable named contact
.
- Replace a digit in
contact
with"X"
usingstr_replace()
. - Replace all digits in
contact
with"X"
usingstr_replace_all()
. (str_replace()
will only replace the first match to thepattern
.str_replace_all()
will replace all matches to the pattern.) - Replace all digits in
contact
usingstr_replace_all()
, but now specify the vectorc("X", ".", "*", "_")
asreplacement
. Notice how now each string uses a different replacement character.
Hands-on interactive exercise
Have a go at this exercise by completing this sample code.
# View text containing phone numbers
contact
# Replace digits with "X"
str_replace(contact, DGT, ___)
# Replace all digits with "X"
str_replace_all(contact, DGT, ___)
# Replace all digits with different symbol
str_replace_all(contact, DGT, ___)