Learn R Programming

utf8 (version 1.2.3)

utf8_width: Measure the Character String Width

Description

Compute the display widths of the elements of a character object.

Usage

utf8_width(x, encode = TRUE, quote = FALSE, utf8 = NULL)

Value

An integer object, with the same names, dim, and

dimnames as x.

Arguments

x

character object.

encode

whether to encode the object before measuring its width.

quote

whether to quote the object before measuring its width.

utf8

logical scalar indicating whether to determine widths assuming a UTF-8 capable display (ASCII-only otherwise), or NULL to format for output capabilities as determined by output_utf8().

Details

utf8_width returns the printed widths of the elements of a character object on a UTF-8 device (or on an ASCII device when output_utf8() is FALSE), when printed with utf8_print. If the string is not printable on the device, for example if it contains a control code like "\n", then the result is NA. If encode = TRUE, the default, then the function returns the widths of the encoded elements via utf8_encode); otherwise, the function returns the widths of the original elements.

See Also

utf8_print.

Examples

Run this code
# the second element is encoded in latin-1, but declared as UTF-8
x <- c("fa\u00E7ile", "fa\xE7ile", "fa\xC3\xA7ile")
Encoding(x) <- c("UTF-8", "UTF-8", "bytes")

# get widths
utf8_width(x)
utf8_width(x, encode = FALSE)
utf8_width('"')
utf8_width('"', quote = TRUE)

Run the code above in your browser using DataLab