split Interface

public interface split

Split a string on every occurrence of a delimiter, keeping empty fields.

The result always holds one more element than there are delimiter occurrences, so an empty input yields one empty element. See the module documentation for the full policy.

Calls

interface~~split~~CallsGraph interface~split split proc~split_char_char split_char_char interface~split->proc~split_char_char proc~split_char_string split_char_string interface~split->proc~split_char_string proc~split_string_char split_string_char interface~split->proc~split_string_char proc~split_string_string split_string_string interface~split->proc~split_string_string proc~split_char_string->proc~split_char_char proc~split_string_char->proc~split_char_char proc~split_string_string->proc~split_char_char

Module Procedures

private pure function split_char_char(string, delimiter) result(parts)

Split a character string on a character delimiter.

Arguments

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

Return Value type(string_type), allocatable, (:)

private pure function split_char_string(string, delimiter) result(parts)

Split a character string on a string_type delimiter.

Arguments

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

Return Value type(string_type), allocatable, (:)

private pure function split_string_char(string, delimiter) result(parts)

Split a string_type on a character delimiter.

Arguments

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

Return Value type(string_type), allocatable, (:)

private pure function split_string_string(string, delimiter) result(parts)

Split a string_type on a string_type delimiter.

Arguments

Type IntentOptional Attributes Name
type(string_type), intent(in) :: string
type(string_type), intent(in) :: delimiter

Return Value type(string_type), allocatable, (:)