/* $DOC$
   $NAME$
      AfterAtNum()
   $CATEGORY$
      CT3 string functions
   $ONELINER$
      Returns string portion after nth occurence of substring
   $SYNTAX$
      AfterAtNum( <cStringToMatch>, <cString>, [<nCounter>],
                  [<nIgnore>] ) --> cRestString
   $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$
      <cRestString>       the portion of <cString> after the <nCounter>th
                          occurence of <cStringToMatch> in <cString>
                          If such a rest does not exist, an empty string
                          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 portion of
      <cString> after that match will be returned. If there aren't enough
      matches or the last match is identical to the end of <cString>, an
      empty string 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$
      ? AfterAtNum( "!", "What is the answer ? 4 ! 5 !" ) // -> ""
      ? AfterAtNum( "!", "What is the answer ? 4 ! 5 ?" ) // -> " 5 ?"
      <TODO: add some examples here with CSetAtMupa() and SetAtLike()>
   $STATUS$
      Ready
   $COMPLIANCE$
      AfterAtNum() is compatible with CT3's AfterAtNum().
   $PLATFORMS$
      All
   $FILES$
      Library is hbct.
   $SEEALSO$
      AtNum(), BeforAtNum(), CSetAtMupa(), SetAtLike()
   $END$
 */

/* $DOC$
   $NAME$
      BeforAtNum()
   $CATEGORY$
      CT3 string functions
   $ONELINER$
      Returns string portion before nth occurence of substring
   $SYNTAX$
      BeforAtNum( <cStringToMatch>, <cString>, [<nCounter>],
                  [<nIgnore>] ) --> cRestString
   $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$
      <cRestString>       the portion of <cString> before the <nCounter>th
                          occurence of <cStringToMatch> in <cString>
                          If such a string does not exist, an empty string
                          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 portion of
      <cString> before that match will be returned. If there aren't enough
      matches or the last match is identical to the start of <cString>
      (i.e. the last match is the first match), an empty string 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$
      ? BeforAtNum( "!", "What is the answer ? 4 ! 5 !" ) // -> "What is the answer ? 4 ! 5 "
      ? BeforAtNum( "!", "What is the answer ? 4 ! 5 ?" ) // -> "What is the answer ? 4 "
      <TODO: add some examples here with CSetAtMupa() and SetAtLike()>
   $STATUS$
      Ready
   $COMPLIANCE$
      BeforAtNum() is compatible with CT3's BeforAtNum().
   $PLATFORMS$
      All
   $FILES$
      Library is hbct.
   $SEEALSO$
      AtNum(), AfterAtNum(), CSetAtMupa(), SetAtLike()
   $END$
 */

/* $DOC$
   $NAME$
      AtNum()
   $CATEGORY$
      CT3 string functions
   $ONELINER$
      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
      <TODO: add some examples here with CSetAtMupa() and SetAtLike()>
   $STATUS$
      Ready
   $COMPLIANCE$
      AtNum() is compatible with CT3's AtNum().
   $PLATFORMS$
      All
   $FILES$
      Library is hbct.
   $SEEALSO$
      AtNum(), AfterAtNum(), CSetAtMupa(), SetAtLike()
   $END$
 */
