Spotfire® Enterprise Runtime for R

String Representation

TERR and open-source R vary in their string encodings.

Open-source R allows strings to be represented in any of four encodings:

  • "unknown" (the default character encoding for the system)
  • "latin1"
  • "UTF-8"
  • "bytes"

TERR currently creates all strings as "unknown" by default (note that "unknown" encoding is hard-wired to use UTF-8). The functions Encoding and iconv can be used for constructing strings with other encodings.

TERR allows adding Unicode characters into a string using an escape sequence such as "\u30A4" or "\U{30A4}" to create a string containing a single Japanese character. Alternatively, it is possible to add Unicode characters into a typed string by typing them, or copy-and-pasting them. Exactly which characters can be typed or printed depends on how the console is set up (described below).

The TERR string-manipulation functions (substring, nchar, paste, and so on) correctly handle UTF-8 strings. Functions for searching strings with regular expressions (regexpr, grep, strsplit, and so on) correctly handle UTF-8 strings as the data or the pattern strings.

TERR implements several functions for constructing strings from integers or raw bytes: intToUtf8, utf8ToInt, charToRaw, rawToChar.