This function shortens strings that are longer than max.length chars, without cropping words.

shorten_string(s, max.length = NULL, abbr = "...")

Arguments

s

A string.

max.length

Maximum length of chars for the string.

abbr

String that will be used as suffix, if s was shortened.

Value

A shortened string.

Details

If the string length defined in max.length happens to be inside a word, this word is removed from the returned string (see 'Examples'), so the returned string has a maximum length of max.length, but might be shorter.

Examples

s <- "This can be considered as very long string!"

# string is shorter than max.length, so returned as is
shorten_string(s, 60)
#> [1] "This can be considered as very long string!"

# string is shortened to as many words that result in
# a string of maximum 20 chars
shorten_string(s, 20)
#> [1] "This can be..."

# string including "considered" is exactly of length 22 chars
shorten_string(s, 22)
#> [1] "This can be considered..."