# ATNUM()

Returns the start position of the nth occurence of a substring in a string

Syntax

  ATNUM (<cStringToMatch>, <cString>, [<nCounter>],
  [<nIgnore>] ) --> nPosition

Arguments

  <cStringToMatch> is the substring scanned for <cString> is the scanned string [<nCounter>] determines how many occurences are of <cStringToMatch> in <cString> are searched Default: search last occurence [<nIgnore>] determines how many character from the start should be ignored in the search Default: 0

Returns

  <nPosition> the position of the <nCounter>th occurence of <cStringToMatch> in <cString>. If such an occurence does not exist, 0 is returned.

Description

  This function scans <cString> for <cStringToMatch>. After the <nCounter>th match (or the last one, depending on the value of <nCounter>) has been found, the position of that match will be returned. If there aren't enough matches or there is no last match, 0 will be returned. After a match has been found, the function continues to scan after that match if the CSETATMUPA() switch is turned off, with the second character of the matched substring otherwise. The function will also consider the settings of SETATLIKE().

Examples

          ? ATNUM ("!", "What is the answer ? 4 ! 5 !") -> 28
          ? ATNUM ("!", "What is the answer ? 4 ! 5 ?") -> 24

    Tests
          ATNUM ("..", "..This..is..a..test!") == 14
          ATNUM ("..", "..This..is..a..test!", 2) == 7
          ATNUM ("..", "..This..is..a..test!", 2, 2) == 11

Status

  Ready

Compliance

  ATNUM() is compatible with CT3's ATNUM().

Platforms

  All

Files

  Source is atnum.c, library is libct.

See Also

- ATNUM() AFTERATNUM() CSETATMUPA() SETATLIKE()