Index Page
matchi_c
A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X 

Procedure
Abstract
Required_Reading
Keywords
Brief_I/O
Detailed_Input
Detailed_Output
Parameters
Exceptions
Files
Particulars
Examples
Restrictions
Literature_References
Author_and_Institution
Version
Index_Entries

Procedure

   SpiceBoolean matchi_c ( ConstSpiceChar      * string,
                           ConstSpiceChar      * templ,
                           SpiceChar             wstr,
                           SpiceChar             wchr   )

Abstract

 
    Determine whether a string is matched by a template containing 
    wild cards.  The pattern comparison is case-insensitive.
 

Required_Reading

 
    None. 
 

Keywords

 
    CHARACTER,  COMPARE 
 

Brief_I/O

 
    VARIABLE  I/O  DESCRIPTION 
    --------  ---  -------------------------------------------------- 
    string     I   String to be tested. 
    templ      I   Template (with wild cards) to test against string. 
    wstr       I   Wild string token. 
    wchr       I   Wild character token. 
    
    The function returns the value SPICETRUE if string matches templ,
    SPICEFALSE if not.
 

Detailed_Input

 
    string      is the input character string to be tested for 
                a match against the input template. Leading and 
                trailing blanks are ignored. 
 
    templ       is the input template to be tested for a match 
                against the input string. TEMPL may contain wild 
                cards. Leading and trailing blanks are ignored. 
 
    wstr        is the wild string token used in the input template. 
                The wild string token may represent from zero to 
                any number of characters. 
 
    wchr        is the wild character token used in the input 
                template. The wild character token represents 
                exactly one character. 
 

Detailed_Output

 
    The function returns SPICETRUE when the input string matches the
    input template, and SPICEFALSE otherwise. The string and template
    match whenever the template can expand (through replacement of its
    wild cards) to become the input string.
 

Parameters

 
   None. 
 

Exceptions

 
   1) If either the input string pointer is null, the error 
      SPICE(NULLPOINTER) will be signaled.  The function will
      return SPICEFALSE.
      
   2) If either input string has length zero, the error 
      SPICE(EMPTYSTRING) will be signaled.  The function will
      return SPICEFALSE.
      

Files

 
    None. 
 

Particulars

 
   matchi_c ignores leading and trailing blanks in both the string 
   and the template. All of the following are equivalent:  they 
   all return SPICETRUE. 

      #include "SpiceUsr.h"
            .
            .
            .
      matchi_c ( "ALCATRAZ",       "A*Z",      '*', '%' ); 
      matchi_c ( "  ALCATRAZ  ",   "a*z",      '*', '%' ); 
      matchi_c ( "alcatraz",       "  A*Z  ",  '*', '%' ); 
      matchi_c ( "  ALCATRAZ  ",   "  A*Z  ",  '*', '%' ); 

   matchi_c is case-insensitive:  uppercase characters match 
   lowercase characters, and vice versa.  Wild characters match 
   characters of both cases. 

Examples

 
   Let 
         string  = "  ABCDEFGHIJKLMNOPQRSTUVWXYZ  " 
         wstr    = '*' 
         wchr    = '%' 

   Then 
         if TEMPL is  "*A*"        matchi_c is SPICETRUE 
                      "A%D*"                     SPICEFALSE 
                      "A%C*"                   SPICETRUE 
                      "%A*"                      SPICEFALSE 
                      "%%CD*Z"                 SPICETRUE 
                      "%%CD"                     SPICEFALSE 
                      "A*MN*Y*Z"               SPICETRUE 
                      "A*MN*Y*%Z"                SPICEFALSE 
                      "*BCD*Z*"                SPICETRUE
                      "*bdc*z*"                  SPICEFALSE
                      " *bcD*Z*  "             SPICETRUE 
 

Restrictions

 
   None. 
 

Literature_References

 
    None. 
 

Author_and_Institution

 
    N.J. Bachman    (JPL)
    W.L. Taber      (JPL) 
    I.M. Underwood  (JPL) 
 

Version

 
   -CSPICE Version 1.0.0, 17-AUG-1999 (NJB) (WLT) (IMU)

Index_Entries

 
   match string against wildcard template 
   test whether a string matches a wildcard template 
 

Link to routine matchi_c source file matchi_c.c

Wed Apr  5 17:54:39 2017