code:

Can't Copy and Paste this?

Click here for a copy-and-paste friendly version of this code!

 

Terms of Agreement:   

By using this code, you agree to the following terms...   

1) You may use this code in your own programs (and may compile it into a program and distribute it in compiled format for langauges that allow it) freely and with no charge.   

2) You MAY NOT redistribute this code (for example to a web site) without written permission from the original author. Failure to do so is a violation of copyright laws.   

3) You may link to this code from another website, but ONLY if it is not wrapped in a frame. 

4) You will abide by any additional copyright restrictions which the author may have placed in the code or code's description.  

//     

/* +++Date last modified: 05-Jul-1997 */

/*

** strrpbrk() - reverse of strpbrk() - Finds the last occurrence of

** any characters from szChars found in szString.

**

** Donated to SNIPPETS by Phi Nguyen 1995, modified by Bob Stout

*/

#include 

#include 

#include "snip_str.h"

#if defined(__cplusplus) && __cplusplus

    extern "C" {

    #endif

    char *strrpbrk(const char *szString, const char *szChars)

        {

        const char *p;

        char*p0, *p1;

        for (p = szChars, p0 = p1 = NULL; p && *p; ++p)

            {

            p1 = strrchr(szString, *p);

            if (p1 && p1 > p0)

            p0 = p1;

        }

        return p0;

    }

    #if defined(__cplusplus) && __cplusplus

}

#endif

#ifdef TEST

main()

    {

    char string[] = "This is a testing string",

    chars[] = "xyzet",

    *ptr;

    ptr = strrpbrk(string, chars);

    if (ptr)

    printf("One or more of \"%s\" found at \"%s\"\n", chars, ptr);

    else printf("Can't find any of \"%s\" in \"%s\".\n", chars, string);

    return 0;

}

#endif /* TEST */