# Characters Procedure

Converts a String value into a list of "grapheme clusters," or what human readers would intuitively understand as "characters."
In languages using a Latin script, a letter or an accent are considered graphemes. A grapheme cluster is the Latin letter combined with its accents.
For example, consider the text value "né" formed by three code points:
"n" + "e" + Chr(769)
' 769 is the code point for "COMBINING ACUTE ACCENT"
The function Len returns 3 for this text because there are three code units. However, there are only two grapheme clusters: n and é. The Characters function returns ["n", "é"] for this text.
By default, Characters uses the en_US locale unless a locale is specified.

Declaration
function Characters(this as String) as List of String

### Parameters

• this as String — Any text value.

### Return value

List of String — A list of the characters (grapheme clusters) in this.

### Example

Code
dim s = "n" + "e" + Chr(769)
dim x = Characters(s)
print Len(x(0)) ' x(0) is one code unit: "n"
print Len(x(1)) ' x(1) is two code units: "e" + Chr(769)
Output
1
2

Declaration
function Characters(
this as String, locale as String
) as List of String

### Parameters

• this as String — Any text value.
• locale as String — The locale to use. This is either a language code like en or a combination of language and region like en_US. Use the AvailableLocales function to retrieve the list of all possible locales.

### Return value

List of String — A list of the characters (grapheme clusters) in this.

### Example

Code
dim s = "n" + "e" + Chr(769)
dim x = Characters(s, "fr_FR")
print Len(x(0)) ' one code unit: "n"
print Len(x(1)) ' two code unit: "e" + Chr(769)
Output
1
2