锐英源软件
第一信赖

精通

英语

开源

擅长

开发

培训

胸怀四海 

第一信赖

当前位置:锐英源 / 开源技术 / C语言开源 / C语言判断字符串内全是一组字符外的字符组成
服务方向
人工智能数据处理
人工智能培训
kaldi数据准备
小语种语音识别
语音识别标注
语音识别系统
语音识别转文字
kaldi开发技术服务
软件开发
运动控制卡上位机
机械加工软件
软件开发培训
Java 安卓移动开发
VC++
C#软件
汇编和破解
驱动开发
联系方式
固话:0371-63888850
手机:138-0381-0136
Q Q:396806883
微信:ryysoft

C语言判断字符串内全是一组字符外的字符组成


代码

char *jzseps   = "abcdefghijklmnprstwxyz";//目标组字符的反集,意思是查没出现字符组成的字符串
BOOL JudgeHave(char *pfrom,char *pin)
{
	char cback[MAXPINYINLEN]={0};//备份2个
	char cuse[MAXPINYINLEN]={0};
	strcpy(cback,pfrom);//拷贝字符串
	strcpy(cuse,pfrom);
	char *token=strtok(cuse,pin);//用strtok来定位,如果定位到了,则cuse会改变,这样只要查到了一个jzseps里的字符,则新旧不一样,
	if(strcmp(cuse,cback)==0)//一样,则代表不包含反集,只有目标集oquv
		return FALSE;
	return TRUE;
}

逻辑解读

要点在strtok,这个函数本意是用于查找分隔符,根据一组字符来分隔字符串,得到切隔后的子字符串数组,它内部也是用查找来进行定位的。strtok本身支持多个字符的同时查找,这比自己写循环来实现判断字符串内全是一组字符外的字符组成要好些,并且strtok的底层的效率也肯定比C语言写的循环效率要更好。

strcmp是用于比较,如果2者字符完全一样,则返回0

友情链接
版权所有 Copyright(c)2004-2021 锐英源软件
公司注册号:410105000449586 豫ICP备08007559号 最佳分辨率 1024*768
地址:郑州大学北校区院(文化路97号院)内