Library
Module
Module type
Parameter
Class
Class type
Functions for working with single characters.
Character literals are enclosed in 'a'
pair of single quotes.
let digit = '7'
The functions in this module work on ASCII characters (range 0-255) only, not Unicode.
Since character 128 through 255 have varying values depending on what standard is being used (ISO 8859-1 or Windows 1252), you are advised to stick to the 0-127 range.
Functions for working with single characters.
You can create a Char
using single quotes:
let char = 'c'
Convert an ASCII code point to a character.
Returns None
if the codepoint is outside the range of 0 to 255 inclusive.
Examples
Char.ofCode 65 = Some 'A'
Char.ofCode 66 = Some 'B'
Char.ofCode 3000 = None
Char.ofCode (-1) = None
The full range of extended ASCII is from 0
to 255
. For numbers outside that range, you get None
.
Converts a string to a character.
Returns None when the string isn't of length one.
Examples
Char.ofString "A" = Some 'A'
Char.ofString " " = Some ' '
Char.ofString "" = None
Char.ofString "abc" = None
Char.ofString " a" = None
Detect lower case ASCII characters.
Examples
Char.isLowercase 'a' = true
Char.isLowercase '0' = false
Char.isLowercase 'A' = false
Char.isLowercase '-' = false
Detect upper case ASCII characters.
Examples
Char.isUppercase 'A' = true
Char.isUppercase 'h' = false
Char.isUppercase '0' = false
Char.isUppercase '-' = false
Detect upper and lower case ASCII alphabetic characters.
Examples
Char.isLetter 'a' = true
Char.isLetter 'E' = true
Char.isLetter '0' = false
Char.isLetter '-' = false
Detect when a character is a number
Examples
Char.isDigit '0' = true
Char.isDigit '9' = true
Char.isDigit 'a' = false
Char.isDigit '-' = false
Detect upper case, lower case and digit ASCII characters.
Examples
Char.isAlphanumeric 'a' = true
Char.isAlphanumeric 'E' = true
Char.isAlphanumeric '0' = true
Char.isAlphanumeric '-' = false
Detect if a character is a printable character
A Printable character has a Char.toCode
in the range 32 to 127, inclusive (' '
to '~'
).
Examples
Char.isPrintable 'G' = true
Char.isPrintable '%' = true
Char.isPrintable ' ' = true
Char.isPrintable '\t' = false
Char.isPrintable '\007' = false
Detect one of the following characters:
'\t'
(tab)'\n'
(newline)'\011'
(vertical tab)'\012'
(form feed)'\r'
(carriage return)' '
(space)Examples
Char.isWhitespace '\t' = true
Char.isWhitespace ' ' = true
Char.isWhitespace '?' = false
Char.isWhitespace 'G' = false
Converts an ASCII character to lower case, preserving non alphabetic ASCII characters.
Examples
Char.toLowercase 'A' = 'a'
Char.toLowercase 'B' = 'b'
Char.toLowercase '7' = '7'
Convert an ASCII character to upper case, preserving non alphabetic ASCII characters.
Examples
toUppercase 'a' = 'A'
toUppercase 'b' = 'B'
toUppercase '7' = '7'
Convert a character into a string.
Examples
Char.toString 'A' = "A"
Char.toString '{' = "{"
Char.toString '7' = "7"
Converts a digit character to its corresponding Int
.
Returns None
when the character isn't a digit.
Examples
Char.toDigit "7" = Some 7
Char.toDigit "0" = Some 0
Char.toDigit "A" = None
Char.toDigit "" = None
Test two Char
s for equality
Compare two Char
s
The unique identity for chars
Comparator
val comparator : (char, identity) Standard__.Core.Comparator.t