ASCIIfy: Convert Characters to ASCII

Description Usage Arguments Value Note Author(s) See Also Examples

Description

Convert character vector to ASCII, replacing non-ASCII characters with single-byte (\x00) or two-byte (\u0000) codes.

Usage

1
ASCIIfy(x, bytes = 2, fallback = "?")

Arguments

x

a character vector, possibly containing non-ASCII characters.

bytes

either 1 or 2, for single-byte (\x00) or two-byte (\u0000) codes.

fallback

an output character to use, when input characters cannot be converted.

Value

A character vector like x, except non-ASCII characters have been replaced with \x00 or \u0000 codes.

Note

To render single backslashes, use these or similar techniques:

1
2
    write(ASCIIfy(x), "file.txt")
    cat(paste(ASCIIfy(x), collapse="\n"), "\n", sep="")

The resulting strings are plain ASCII and can be used in R functions and datasets to improve package portability.

Author(s)

Arni Magnusson arnima@hafro.is

See Also

showNonASCII identifies non-ASCII characters in a character vector.

Examples

1
2
3
4
5
6
7
8
cities <- c("S\u00e3o Paulo", "Reykjav\u00edk")
print(cities)
ASCIIfy(cities, 1)
ASCIIfy(cities, 2)

athens <- "\u0391\u03b8\u03ae\u03bd\u03b1"
print(athens)
ASCIIfy(athens)

Example output

[1] "S<U+00E3>o Paulo" "Reykjav<U+00ED>k"
[1] "S\\xe3o Paulo" "Reykjav\\xedk"
[1] "S\\u00e3o Paulo" "Reykjav\\u00edk"
[1] "<U+0391><U+03B8><U+03AE><U+03BD><U+03B1>"
[1] "\\u0391\\u03b8\\u03ae\\u03bd\\u03b1"

gtools documentation built on May 2, 2019, 4:52 p.m.

Related to ASCIIfy in gtools...