File Information
Library: Foundation
Package: Core
Header: Poco/Ascii.h
Description
This class contains enumerations and static utility functions for dealing with ASCII characters and their properties.
The classification functions will also work if non-ASCII character codes are passed to them, but classification will only check for ASCII characters.
This allows the classification methods to be used on the single bytes of a UTF-8 string, without causing assertions or inconsistent results (depending upon the current locale) on bytes outside the ASCII range, as may be produced by Ascii::isSpace(), etc.
Member Summary
Member Functions: hasProperties, hasSomeProperties, isAlpha, isAlphaNumeric, isAscii, isDigit, isHexDigit, isLower, isPrintable, isPunct, isSpace, isUpper, properties, toLower, toUpper
Enumerations
CharacterProperties
ASCII character properties.
ACP_CONTROL = 0x0001
ACP_SPACE = 0x0002
ACP_PUNCT = 0x0004
ACP_DIGIT = 0x0008
ACP_HEXDIGIT = 0x0010
ACP_ALPHA = 0x0020
ACP_LOWER = 0x0040
ACP_UPPER = 0x0080
ACP_GRAPH = 0x0100
ACP_PRINT = 0x0200
Member Functions
hasProperties
static bool hasProperties(
int ch,
int properties
);
Returns true if the given character is within the ASCII range and has all of the given properties.
hasSomeProperties
static bool hasSomeProperties(
int ch,
int properties
);
Returns true if the given character is within the ASCII range and has at least one of the given properties.
isAlpha
static bool isAlpha(
int ch
);
Returns true if and only if the given character is an alphabetic character.
isAlphaNumeric
static bool isAlphaNumeric(
int ch
);
Returns true if and only if the given character is an alphabetic character.
isAscii
static bool isAscii(
int ch
);
Returns true if and only if the given character code is within the ASCII range (0 .. 127).
isDigit
static bool isDigit(
int ch
);
Returns true if and only if the given character is a digit.
isHexDigit
static bool isHexDigit(
int ch
);
Returns true if and only if the given character is a hexadecimal digit.
isLower
static bool isLower(
int ch
);
Returns true if and only if the given character is a lowercase alphabetic character.
isPrintable
static bool isPrintable(
int ch
);
Returns true if and only if the given character is printable.
isPunct
static bool isPunct(
int ch
);
Returns true if and only if the given character is a punctuation character.
isSpace
static bool isSpace(
int ch
);
Returns true if and only if the given character is a whitespace.
isUpper
static bool isUpper(
int ch
);
Returns true if and only if the given character is an uppercase alphabetic character.
properties
static int properties(
int ch
);
Return the ASCII character properties for the character with the given ASCII value.
If the character is outside the ASCII range (0 .. 127), 0 is returned.
toLower
static int toLower(
int ch
);
If the given character is an uppercase character, return its lowercase counterpart, otherwise return the character.
toUpper
static int toUpper(
int ch
);
If the given character is a lowercase character, return its uppercase counterpart, otherwise return the character.