char* strchr( const char* str, int chr );
在str中查找第一次出現(xiàn)的chr,沒找到則返回0
char* strrchr( const char* str, int chr );
在str中查找最后一次出現(xiàn)的chr,沒找到則返回0
char* strstr( const char* str, const char* substr );
在str中查找第一次出現(xiàn)的substr,沒找到則返回0
size_t strspn( const char* str, const char* chrset );
在str中查找 只包含在chrset中的字符 的最開始的最長(zhǎng)字符數(shù)目
strspn( "cabbage", "abc" ) == 5;
strspn( "cabbage", "dc" ) == 1;
strspn( "cabbage", "d" ) == 0;
strspn( str, "abceg" ) == 7;
char* strspnp( const char* str, const char* chrset );
和strspn功能一樣,只是返回指針
const char* str = "cabbage"
strspnp( str, "abc" ) == str+5;
strspnp( str, "dc" ) == str+1;
strspnp( str, "d" ) == str+0;
strspnp( str, "abceg" ) == 0; // 和strspn不一樣
size_t strcspn( const char* str, const char* chrset );
在str中查找第一次出現(xiàn)在chrset中的字符位置,沒找到則返回str結(jié)尾的''的位置
strcspn( "xyzbxz", "abc" ) = 3
strcspn( "xyzbxz", "xyz" ) = 0
strcspn( "xyzbxz", "no match" ) = 6
strcspn( "xyzbxz", "" ) = 6
strcspn( "", "abc" ) = 0
strcspn( "", "" ) = 0
char* strpbrk( const char* str, const char* chrset );
和strcspn功能一樣,只是返回指針
strpbrk( "xyzbxz", "abc" ) = "xyzbxz"+3
strpbrk( "xyzbxz", "xyz" ) = "xyzbxz"+0
strpbrk( "xyzbxz", "no match" ) = 0 // 和strcspn不一樣
strpbrk( "xyzbxz", "" ) = 0 // 和strcspn不一樣
strpbrk( "", "abc" ) = 0 // 和strcspn不一樣
strpbrk( "", "" ) = 0 // 和strcspn不一樣
------------------------
假如想將 "123@456@789" 分割成 "123" "456" "789" 當(dāng)用 strchr
假如想將 "123@#456@#789" 分割成 "123" "456" "789" 當(dāng)用 strstr
假如想將 "123@456#789@#0" 分割成 "123" "456" "789" "" "0" 當(dāng)用 strcspn
假如想將 "123@456#789@#0" 分割成 "123" "456" "789" "0" 當(dāng)用 strcspn/strspn
在str中查找第一次出現(xiàn)的chr,沒找到則返回0
char* strrchr( const char* str, int chr );
在str中查找最后一次出現(xiàn)的chr,沒找到則返回0
char* strstr( const char* str, const char* substr );
在str中查找第一次出現(xiàn)的substr,沒找到則返回0
size_t strspn( const char* str, const char* chrset );
在str中查找 只包含在chrset中的字符 的最開始的最長(zhǎng)字符數(shù)目
strspn( "cabbage", "abc" ) == 5;
strspn( "cabbage", "dc" ) == 1;
strspn( "cabbage", "d" ) == 0;
strspn( str, "abceg" ) == 7;
char* strspnp( const char* str, const char* chrset );
和strspn功能一樣,只是返回指針
const char* str = "cabbage"
strspnp( str, "abc" ) == str+5;
strspnp( str, "dc" ) == str+1;
strspnp( str, "d" ) == str+0;
strspnp( str, "abceg" ) == 0; // 和strspn不一樣
size_t strcspn( const char* str, const char* chrset );
在str中查找第一次出現(xiàn)在chrset中的字符位置,沒找到則返回str結(jié)尾的''的位置
strcspn( "xyzbxz", "abc" ) = 3
strcspn( "xyzbxz", "xyz" ) = 0
strcspn( "xyzbxz", "no match" ) = 6
strcspn( "xyzbxz", "" ) = 6
strcspn( "", "abc" ) = 0
strcspn( "", "" ) = 0
char* strpbrk( const char* str, const char* chrset );
和strcspn功能一樣,只是返回指針
strpbrk( "xyzbxz", "abc" ) = "xyzbxz"+3
strpbrk( "xyzbxz", "xyz" ) = "xyzbxz"+0
strpbrk( "xyzbxz", "no match" ) = 0 // 和strcspn不一樣
strpbrk( "xyzbxz", "" ) = 0 // 和strcspn不一樣
strpbrk( "", "abc" ) = 0 // 和strcspn不一樣
strpbrk( "", "" ) = 0 // 和strcspn不一樣
------------------------
假如想將 "123@456@789" 分割成 "123" "456" "789" 當(dāng)用 strchr
假如想將 "123@#456@#789" 分割成 "123" "456" "789" 當(dāng)用 strstr
假如想將 "123@456#789@#0" 分割成 "123" "456" "789" "" "0" 當(dāng)用 strcspn
假如想將 "123@456#789@#0" 分割成 "123" "456" "789" "0" 當(dāng)用 strcspn/strspn

