rm_nchar_words function

Remove/Replace/Extract N Letter Words

Remove/Replace/Extract N Letter Words

Remove/replace/extract words that are n letters in length (apostrophes not counted).

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

Arguments

  • text.var: The text variable.
  • n: The number of letters counted in the word.
  • 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 (see Details for additional information). Default, @rm_nchar_words uses the rm_nchar_words regex from the regular expression dictionary from the dictionary argument.
  • replacement: Replacement for matched pattern.
  • extract: logical. If TRUE the n letter words 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 n letter words removed.

Details

The default regular expression used by rm_nchar_words counts letter length, not characters. This means that apostrophes are not include in the character count. This behavior can be altered (to include apostrophes in the character count) by using a secondary regular expression from the regex_usa data (or other dictionary) via (pattern = "@rm_nchar_words2"). See Examples for example usage.

Examples

x <- "This is Jon's dogs' 'bout there in a word Mike's re'y." rm_nchar_words(x, 4) ex_nchar_words(x, 4) ## Count characters (apostrophes and letters) ex_nchar_words(x, 5, pattern = "@rm_nchar_words2") ## nchar range rm_nchar_words(x, "1,2") ## Not run: ## Larger example library(qdap) ex_nchar_words(hamlet[["dialogue"]], 5) ## End(Not run)

References

The n letter/character word regular expression was taken from: https://stackoverflow.com/a/25243885/1000343

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_non_ascii(), rm_non_words(), rm_number(), rm_percent(), rm_phone(), rm_postal_code(), rm_repeated_characters(), rm_repeated_phrases(), rm_repeated_words(), rm_tag(), rm_time(), rm_title_name(), rm_url(), rm_white(), rm_zip()

Author(s)

stackoverflow's CharlieB and Tyler Rinker tyler.rinker@gmail.com.

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