C語言中的字串搜尋函式是什麼?
C語言中的字串搜尋函式
該庫還提供了一些字串搜尋函式,如下所示:
| 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中任何字元的第一次出現的指標,如果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
", ans);
}
輸出
執行上述程式後,將產生以下結果:
llo
執行完畢後,ans 指向 str1 + 2 的位置。
**strpbrk()**是一個更通用的函式,它搜尋一組字元中的第一個出現的字元。
示例2
以下是**strpbrk()函式**用法的C程式:
#include <string.h>
#include <stdio.h>
void main(){
char *str1 = "Hello";
char *ans;
ans = strpbrk (str1,"aeiou");
printf("%s
",ans);
}
輸出
執行上述程式後,將產生以下結果:
ello
這裡,ans指向str1 + 1的位置,也就是第一個e的位置。
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP