लाइब्रेरी कई स्ट्रिंग सर्चिंग फंक्शन भी प्रदान करती है, जो निम्नलिखित हैं:
| char *strchr (const char *string, int c); | स्ट्रिंग में कैरेक्टर c की पहली घटना खोजें। |
| char *strrchr (const char *string, int c); | स्ट्रिंग में कैरेक्टर c की अंतिम घटना खोजें। |
| char *strpbrk (const char *s1, const char *s2); | स्ट्रिंग s1 में स्ट्रिंग s2 के किसी भी कैरेक्टर की पहली घटना का पॉइंटर वापस करता है, या NULL पॉइंटर यदि s2 का कोई कैरेक्टर s1 में मौजूद नहीं है। |
| size_t strspn (const char *s1, const char *s2); | s1 की शुरुआत में उन कैरेक्टर्स की संख्या वापस करता है जो s2 से मेल खाते हैं। |
| size_t strcspn (const char *s1, const char *s2); | s1 की शुरुआत में उन कैरेक्टर्स की संख्या वापस करता है जो s2 से मेल नहीं खाते। |
| char *strtok (char *s1, const char *s2); | s1 द्वारा इंगित स्ट्रिंग को टोकन के अनुक्रम में तोड़ता है, जिनमें से प्रत्येक s2 द्वारा इंगित स्ट्रिंग के एक या अधिक कैरेक्टर्स द्वारा सीमांकित होता है। |
| char *strtok_r (char *s1, const char *s2, char **lasts); | strtok() के समान कार्यक्षमता रखता है सिवाय इसके कि कॉलर द्वारा स्ट्रिंग प्लेसहोल्डर lasts का पॉइंटर प्रदान किया जाना चाहिए। |
strchr() और strrchr() उपयोग करने में सबसे सरल हैं।
उदाहरण 1
निम्नलिखित C प्रोग्राम स्ट्रिंग सर्चिंग फंक्शन्स के लिए है:
#include <string.h> #include <stdio.h> void main(){ char *str1 = "Hello"; char *ans; ans = strchr (str1,'l'); printf("%s\n", ans); }आउटपुट
जब उपरोक्त प्रोग्राम निष्पादित होता है, तो यह निम्नलिखित परिणाम उत्पन्न करता है:
llo
इस निष्पादन के बाद, ans लोकेशन str1 + 2 की ओर इंगित करता है।
strpbrk() एक अधिक सामान्य फंक्शन है जो कैरेक्टर्स के समूह में से किसी की पहली घटना खोजता है।
उदाहरण 2
निम्नलिखित C प्रोग्राम strpbrk() फंक्शन के उपयोग के लिए है:
#include <string.h> #include <stdio.h> void main(){ char *str1 = "Hello"; char *ans; ans = strpbrk (str1,"aeiou"); printf("%s\n",ans); }आउटपुट
जब उपरोक्त प्रोग्राम निष्पादित होता है, तो यह निम्नलिखित परिणाम उत्पन्न करता है:
ello
यहां, ans लोकेशन str1 + 1 की ओर इंगित करता है, जो पहले e की लोकेशन है।