このライブラリには、次のようないくつかの文字列検索関数も用意されています。
char *strchr (const char *string, intc) ; | #文字列内で最初に出現する文字 c を検索します。 |
char "strrchr (const char "string, intc); | 文字列文字内の最後の出現箇所を検索します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 *51, const char *s2); | s1 の先頭を返します は s2 の文字数と一致しません。 |
char *strtok(c har *s1,const char *s2); | ポインターの接続を解除しますstring to は、si をトークンのシーケンスに変換します。各トークンは、s2 が指す文字列からの 1 つ以上の文字で区切られます。 |
char * strtok_r(char *s1,const char *s2, char | は strtok と同じ機能を持ちます() 、**lasts を除く); 文字列プレースホルダーへのポインターは呼び出し元によって提供される必要があります。 |
strchr () と strrchr () は最も簡単に使用できます。
以下は 文字列検索関数の C プログラムです-
リアルタイムデモ
#include <string.h> #include <stdio.h> void main(){ char *str1 = "Hello"; char *ans; ans = strchr (str1,'l'); printf("%s</p><p>", ans); }
上記のプログラムを実行すると、次の結果が生成されます -
llo
この操作を実行すると、ans は場所 str1 2 を指します。
strpbrk () は、任意のグループの最初の出現を検索する、より一般的な関数です。
以下は、# を使用した C プログラムです。 ##strpbrk () function -
ライブデモ#include <string.h> #include <stdio.h> void main(){ char *str1 = "Hello"; char *ans; ans = strpbrk (str1,"aeiou"); printf("%s</p><p>",ans); }p>出力 上記のプログラムを実行すると、次の結果が生成されます -
elloここで、ans は位置 str1 1 を指します。これは最初の e の位置です。
以上がC言語の文字列検索関数とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。