rm_tag function

Remove/Replace/Extract Person Tags

Remove/Replace/Extract Person Tags

Remove/replace/extract person tags from a string.

rm_tag( text.var, trim = !extract, clean = TRUE, pattern = "@rm_tag", replacement = "", extract = FALSE, dictionary = getOption("regex.library"), ... ) ex_tag( text.var, trim = !extract, clean = TRUE, pattern = "@rm_tag", replacement = "", extract = TRUE, dictionary = getOption("regex.library"), ... )

Arguments

  • text.var: The text variable.
  • trim: logical. If TRUE removes leading and trailing white spaces.
  • clean: trim logical. If TRUE extra white spaces and escaped character will be removed.
  • pattern: A character string containing a regular expression (or character string for fixed = TRUE) to be matched in the given character vector. Default, @rm_tag uses the rm_tag regex from the regular expression dictionary from the dictionary argument.
  • replacement: Replacement for matched pattern.
  • extract: logical. If TRUE the person tags are extracted into a list of vectors.
  • dictionary: A dictionary of canned regular expressions to search within if pattern begins with "@rm_".
  • ...: Other arguments passed to gsub.

Returns

Returns a character string with person tags removed.

Details

The default regex pattern "(?<![@\w])@([a-z0-9_]+)\b" is more liberal and searches for the at (@) symbol followed by any word. This can be accessed via pattern = "@rm_tag". Twitter user names are more constrained. A second regex ("(?<![@\w])@([a-z0-9_]{1,15})\b") is provide that contains the latter word to substring that begins with an at (@) followed by a word composed of alpha-numeric characters and underscores, no longer than 15 characters. This can be accessed via pattern = "@rm_tag2" (see Examples ).

Examples

x <- c("@hadley I like #rstats for #ggplot2 work.", "Difference between #magrittr and #pipeR, both implement pipeline operators for #rstats: http://renkun.me/r/2014/07/26/difference-between-magrittr-and-pipeR.html @timelyportfolio", "Slides from great talk: @ramnath_vaidya: Interactive slides from Interactive Visualization presentation #user2014. http://ramnathv.github.io/user2014-rcharts/#1", "tyler.rinker@gamil.com is my email", "A non valid Twitter is @abcdefghijklmnopqrstuvwxyz" ) rm_tag(x) rm_tag(rm_hash(x)) ex_tag(x) ## more restrictive Twitter regex ex_tag(x, pattern="@rm_tag2") ## Remove only the @ sign rm_tag(x, replacement = "\\3") rm_tag(x, replacement = "\\3", pattern="@rm_tag2")

See Also

gsub, stri_extract_all_regex

Other rm_ functions: rm_abbreviation(), rm_between(), rm_bracket(), rm_caps(), rm_caps_phrase(), rm_citation(), rm_citation_tex(), rm_city_state(), rm_city_state_zip(), rm_date(), rm_default(), rm_dollar(), rm_email(), rm_emoticon(), rm_endmark(), rm_hash(), rm_nchar_words(), rm_non_ascii(), rm_non_words(), rm_number(), rm_percent(), rm_phone(), rm_postal_code(), rm_repeated_characters(), rm_repeated_phrases(), rm_repeated_words(), rm_time(), rm_title_name(), rm_url(), rm_white(), rm_zip()

  • Maintainer: Tyler Rinker
  • License: GPL-2
  • Last published: 2025-03-24