VERIFY (The GNU Fortran Compiler)

### 8.299 `VERIFY` — Scan a string for characters not a given set ¶

Synopsis:

  `RESULT = VERIFY(STRING, SET[, BACK [, KIND]])`

Description:

  Verifies that all the characters in STRING belong to the set of characters in SET.

  If BACK is either absent or equals `FALSE`, this function returns the position of the leftmost character of STRING that is not in SET. If BACK equals `TRUE`, the rightmost position is returned. If all characters of STRING are found in SET, the result is zero.

Class:

  Elemental function

Arguments:

  STRING | Shall be of type `CHARACTER`.
  SET | Shall be of type `CHARACTER`.
  BACK | (Optional) shall be of type `LOGICAL`.
  KIND | (Optional) A scalar `INTEGER` constant expression indicating the kind parameter of the result.

Return value:

  The return value is of type `INTEGER` and of kind KIND. If KIND is absent, the return value is of default integer kind.

Example:

      PROGRAM test_verify
        WRITE(*,*) VERIFY("FORTRAN", "AO")           ! 1, found 'F'
        WRITE(*,*) VERIFY("FORTRAN", "FOO")          ! 3, found 'R'
        WRITE(*,*) VERIFY("FORTRAN", "C++")          ! 1, found 'F'
        WRITE(*,*) VERIFY("FORTRAN", "C++", .TRUE.)  ! 7, found 'N'
        WRITE(*,*) VERIFY("FORTRAN", "FORTRAN")      ! 0' found none
      END PROGRAM

Standard:

  Fortran 90 and later, with KIND argument Fortran 2003 and later

See also:

  `SCAN` — Scan a string for the presence of a set of characters,
  `INDEX` — Position of a substring within a string