Pad a string to a fixed width, so that
str_length(str_pad(x, n))
is always greater than or equal to n
.
Usage
str_pad(
string,
width,
side = c("left", "right", "both"),
pad = " ",
use_width = TRUE
)
Arguments
- string
Input vector. Either a character vector, or something coercible to one.
- width
Minimum width of padded strings.
- side
Side on which padding character is added (left, right or both).
- pad
Single padding character (default is a space).
- use_width
If
FALSE
, use the length of the string instead of the width; seestr_width()
/str_length()
for the difference.
See also
str_trim()
to remove whitespace;
str_trunc()
to decrease the maximum width of a string.
Examples
rbind(
str_pad("hadley", 30, "left"),
str_pad("hadley", 30, "right"),
str_pad("hadley", 30, "both")
)
#> [,1]
#> [1,] " hadley"
#> [2,] "hadley "
#> [3,] " hadley "
# All arguments are vectorised except side
str_pad(c("a", "abc", "abcdef"), 10)
#> [1] " a" " abc" " abcdef"
str_pad("a", c(5, 10, 20))
#> [1] " a" " a" " a"
str_pad("a", 10, pad = c("-", "_", " "))
#> [1] "---------a" "_________a" " a"
# Longer strings are returned unchanged
str_pad("hadley", 3)
#> [1] "hadley"