ncpos_c |
Table of contents
Procedurencpos_c ( NOT Character position ) SpiceInt ncpos_c ( ConstSpiceChar * str, ConstSpiceChar * chars, SpiceInt start ) AbstractFind the first occurrence in a string of a character NOT belonging to a collection of characters, starting at a specified location, searching forward. Required_ReadingSCANNING KeywordsCHARACTER SEARCH UTILITY Brief_I/OVARIABLE I/O DESCRIPTION -------- --- -------------------------------------------------- str I Any character string. chars I A collection of characters. start I Position to begin looking for one not in chars. The function returns the index of the first character of str at or following index start that is not in the collection chars. Detailed_Inputstr is any character string. chars is a character string containing a collection of characters. Spaces in chars are significant, including trailing blanks. The order in which characters are listed is not significant. start is the position in str to begin looking for characters not in chars. start may range from 0 to n-1, where n is the number of characters in str. Detailed_OutputThe function returns the index of the first character of str (at or following index start) that is not one of the characters in the string chars. The returned value normally ranges from 0 to n-1, where n is the number of characters in str. If no such character is found, the function returns -1. ParametersNone. Exceptions1) If `start' is less than 0, the search begins at the first character of the string. 2) If `start' is greater than the length of the string, ncpos_c returns -1. 3) If any of the `str' or `chars' input string pointers is null, the error SPICE(NULLPOINTER) is signaled. The function returns the value -1. 4) If any of the `str' or `chars' input string has zero length, the function returns the value -1. This case is not considered an error. FilesNone. Particularsncpos_c is case sensitive. An entire family of related CSPICE routines cpos_c cposr_c ncpos_c ncposr_c pos_c posr_c is described in the Required Reading. ExamplesLet string == "BOB, JOHN, TED, AND MARTIN " 012345678901234567890123456789 Let chars == "ABCDEFGHIJKLMNOPQRSTUVWXYZ" Normal (Sequential) Searching: ------------------------------ ncpos_c( string, chars, 0 ) == 3 ncpos_c( string, chars, 4 ) == 4 ncpos_c( string, chars, 5 ) == 9 ncpos_c( string, chars, 10 ) == 10 ncpos_c( string, chars, 11 ) == 14 ncpos_c( string, chars, 15 ) == 15 ncpos_c( string, chars, 16 ) == 19 ncpos_c( string, chars, 20 ) == 26 ncpos_c( string, chars, 27 ) == 27 ncpos_c( string, chars, 28 ) == 28 ncpos_c( string, chars, 29 ) == 29 start out of bounds: -------------------- ncpos_c( string, chars, -12 ) == 3 ncpos_c( string, chars, -1 ) == 3 ncpos_c( string, chars, 30 ) == -1 ncpos_c( string, chars, 122 ) == -1 RestrictionsNone. Literature_ReferencesNone. Author_and_InstitutionN.J. Bachman (JPL) J. Diaz del Rio (ODC Space) W.L. Taber (JPL) Version-CSPICE Version 1.0.1, 04-AUG-2021 (JDR) Edited the header to comply with NAIF standard. -CSPICE Version 1.0.0, 14-AUG-2002 (NJB) (WLT) Index_Entriesforward search for position of unlisted character |
Fri Dec 31 18:41:09 2021