stdlib_ascii Module

The stdlib_ascii module provides procedures for handling and manipulating intrinsic character variables and constants.

The specification of this module is available here.



Variables

Type Visibility Attributes Name Initial
character(len=1), public, parameter :: ACK = achar(int(z'06'))

Acknowledge

character(len=1), public, parameter :: BEL = achar(int(z'07'))

Bell

character(len=1), public, parameter :: BS = achar(int(z'08'))

Backspace

character(len=1), public, parameter :: CAN = achar(int(z'18'))

Cancel

character(len=1), public, parameter :: CR = achar(int(z'0D'))

Carriage return

character(len=1), public, parameter :: DC1 = achar(int(z'11'))

Device control 1

character(len=1), public, parameter :: DC2 = achar(int(z'12'))

Device control 2

character(len=1), public, parameter :: DC3 = achar(int(z'13'))

Device control 3

character(len=1), public, parameter :: DC4 = achar(int(z'14'))

Device control 4

character(len=1), public, parameter :: DEL = achar(int(z'7F'))

Delete

character(len=1), public, parameter :: DLE = achar(int(z'10'))

Data link escape

character(len=1), public, parameter :: EM = achar(int(z'19'))

End of medium

character(len=1), public, parameter :: ENQ = achar(int(z'05'))

Enquiry

character(len=1), public, parameter :: EOT = achar(int(z'04'))

End of transmission

character(len=1), public, parameter :: ESC = achar(int(z'1B'))

Escape

character(len=1), public, parameter :: ETB = achar(int(z'17'))

End of transmission block

character(len=1), public, parameter :: ETX = achar(int(z'03'))

End of text

character(len=1), public, parameter :: FF = achar(int(z'0C'))

NP form feed, new page

character(len=1), public, parameter :: FS = achar(int(z'1C'))

File separator

character(len=1), public, parameter :: GS = achar(int(z'1D'))

Group separator

character(len=1), public, parameter :: LF = achar(int(z'0A'))

NL line feed, new line

character(len=1), public, parameter :: NAK = achar(int(z'15'))

Negative acknowledge

character(len=1), public, parameter :: NUL = achar(int(z'00'))

Null

character(len=1), public, parameter :: RS = achar(int(z'1E'))

Record separator

character(len=1), public, parameter :: SI = achar(int(z'0F'))

Shift in

character(len=1), public, parameter :: SO = achar(int(z'0E'))

Shift out

character(len=1), public, parameter :: SOH = achar(int(z'01'))

Start of heading

character(len=1), public, parameter :: STX = achar(int(z'02'))

Start of text

character(len=1), public, parameter :: SUB = achar(int(z'1A'))

Substitute

character(len=1), public, parameter :: SYN = achar(int(z'16'))

Synchronous idle

character(len=1), public, parameter :: TAB = achar(int(z'09'))

Horizontal tab

character(len=1), public, parameter :: US = achar(int(z'1F'))

Unit separator

character(len=1), public, parameter :: VT = achar(int(z'0B'))

Vertical tab

character(len=*), public, parameter :: digits = hex_digits(1:10)

0 .. 9

character(len=*), public, parameter :: fullhex_digits = "0123456789ABCDEFabcdef"

0 .. 9A .. Fa .. f

character(len=*), public, parameter :: hex_digits = fullhex_digits(1:16)

0 .. 9A .. F

character(len=*), public, parameter :: letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"

A .. Za .. z

character(len=*), public, parameter :: lowercase = letters(27:)

a .. z

character(len=*), public, parameter :: lowerhex_digits = "0123456789abcdef"

0 .. 9a .. f

character(len=*), public, parameter :: octal_digits = digits(1:8)

0 .. 7

character(len=*), public, parameter :: uppercase = letters(1:26)

A .. Z

character(len=*), public, parameter :: whitespace = " "//TAB//VT//CR//LF//FF

ASCII _whitespace


Functions

public pure function is_alpha(c)

Checks whether c is an ASCII letter (A .. Z, a .. z).

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: c

The character to test.

Return Value logical

public pure function is_alphanum(c)

Checks whether c is a letter or a number (0 .. 9, a .. z, A .. Z).

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: c

The character to test.

Return Value logical

public pure function is_ascii(c)

Checks whether or not c is in the ASCII character set - i.e. in the range 0 .. 0x7F.

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: c

The character to test.

Return Value logical

public pure function is_blank(c)

Checks whether or not c is a blank character. That includes the only the space and tab characters

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: c

The character to test.

Return Value logical

public pure function is_control(c)

Checks whether c is a control character.

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: c

The character to test.

Return Value logical

public pure function is_digit(c)

Checks whether c is a digit (0 .. 9).

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: c

The character to test.

Return Value logical

public pure function is_graphical(c)

Checks whether or not c is a printable character other than the space character.

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: c

The character to test.

Return Value logical

public pure function is_hex_digit(c)

Checks whether c is a digit in base 16 (0 .. 9, A .. F, a .. f).

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: c

The character to test.

Return Value logical

public pure function is_lower(c)

Checks whether c is a lowercase ASCII letter (a .. z).

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: c

The character to test.

Return Value logical

public pure function is_octal_digit(c)

Checks whether c is a digit in base 8 (0 .. 7).

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: c

The character to test.

Return Value logical

public pure function is_printable(c)

Checks whether or not c is a printable character - including the space character.

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: c

The character to test.

Return Value logical

public pure function is_punctuation(c)

Checks whether or not c is a punctuation character. That includes all ASCII characters which are not control characters, letters, digits, or whitespace.

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: c

The character to test.

Return Value logical

public pure function is_upper(c)

Checks whether c is an uppercase ASCII letter (A .. Z).

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: c

The character to test.

Return Value logical

public pure function is_white(c)

Checks whether or not c is a whitespace character. That includes the space, tab, vertical tab, form feed, carriage return, and linefeed characters.

Arguments

Type IntentOptional Attributes Name
character(len=1), intent(in) :: c

The character to test.

Return Value logical

public pure function reverse(string) result(reverse_string)

Reverse the character order in the input character variable (Specification)

Read more…

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: string

Return Value character(len=len)

public pure function to_lower(string) result(lower_string)

Convert character variable to lower case (Specification)

Read more…

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: string

Return Value character(len=len)

public pure function to_sentence(string) result(sentence_string)

Converts character sequence to sentence case (Specification)

Read more…

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: string

Return Value character(len=len)

public pure function to_title(string) result(title_string)

Converts character sequence to title case (Specification)

Read more…

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: string

Return Value character(len=len)

public pure function to_upper(string) result(upper_string)

Convert character variable to upper case (Specification)

Read more…

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: string

Return Value character(len=len)