size_t strspn(const char *str1, const char *str2)
检索字符串 str1 中第一个不在字符串 str2 中出现的字符下标。
即:从str1中从左到右去查看str2中第一个没有该字符的位置,不考虑str2中字符的顺序,只要存在str1中的字符就行,返回值:str1中第一个没有在str2中找到的字符。
#include <stdio.h>
#include <string.h>
int main ()
{
int len;
int len1;
const char str1[] = "ABCDEFG019874";
const char str2[] = "asadaCA";
const char str3[] = "aCdaBAD";
len = strspn(str1, str2);
len1 = strspn(str1, str3);
printf("初始段匹配长度 %d\n", len );
printf("初始段匹配长度 %d\n", len1 );
return(0);
}
char *strrchr(const char *str, int c)
在参数 str 所指向的字符串中搜索最后一次出现字符 c(一个无符号字符)的位置。
#include <stdio.h>
#include <string.h>
int main ()
{
int len;
const char str[] = "https://www.runoob.com";
const char ch = '.';
char *ret;
ret = strrchr(str, ch);
printf("|%c| 之后的字符串是 - |%s|\n", ch, ret);
return(0);
}
void *memchr(const void *str, int c, size_t n)
在参数 str 所指向的字符串的前 n 个字节中搜索第一次出现字符 c(一个无符号字符)的位置。
char *strchr(const char *str, int c)
在参数 str 所指向的字符串中搜索第一次出现字符 c(一个无符号字符)的位置。
int strcoll(const char *str1, const char *str2)
把 str1 和 str2 进行比较,结果取决于 LC_COLLATE 的位置设置。
char *strtok(char *str, const char *delim)
分解字符串 str 为一组字符串,delim 为分隔符。
例如:
#include <string.h>
#include <stdio.h>
int main () {
char str[80] = "This is - www.runoob.com - website";
const char s[2] = "-";
char *token;
token = strtok(str, s);
while( token != NULL ) {
printf( "%s\n", token );
token = strtok(NULL, s);
}
return(0);
}
size_t strxfrm(char *dest, const char *src, size_t n)
根据程序当前的区域选项中的 LC_COLLATE 来转换字符串 src 的前 n 个字符,并把它们放置在字符串 dest 中。