Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(kind=CK,len=*), | intent(in) | :: | string_ | The string. |
||
type(string), | intent(in) | :: | substring | Searched substring. |
||
logical, | intent(in), | optional | :: | back | Start of the last occurrence rather than the first. |
Result of the search.
Return the position of the start of the first occurrence of string substring
as a substring in string
, counting from one.
If substring
is not present in string
, zero is returned. If the back argument is present and true, the return value is
the start of the last occurrence rather than the first.
elemental function sindex_character_string(string_, substring, back) result(i)
!---------------------------------------------------------------------------------------------------------------------------------
!< Return the position of the start of the first occurrence of string `substring` as a substring in `string`, counting from one.
!< If `substring` is not present in `string`, zero is returned. If the back argument is present and true, the return value is
!< the start of the last occurrence rather than the first.
!---------------------------------------------------------------------------------------------------------------------------------
character(kind=CK, len=*), intent(in) :: string_ !< The string.
type(string), intent(in) :: substring !< Searched substring.
logical, intent(in), optional :: back !< Start of the last occurrence rather than the first.
integer :: i !< Result of the search.
!---------------------------------------------------------------------------------------------------------------------------------
!---------------------------------------------------------------------------------------------------------------------------------
if (allocated(substring%raw)) then
i = index(string=string_, substring=substring%raw, back=back)
else
i = 0
endif
return
!---------------------------------------------------------------------------------------------------------------------------------
endfunction sindex_character_string