C语言之字符串模糊查询方法的实现
字符串模糊查询,主要是输入不完全的信息进行查找,即每次查找的是待查询的内容中是否含有输入的内容,如果有,则表示找到了。下面详细的介绍下模糊查询的实现方法,代码如下:
#include<stdio.h> #include<stdlib.h> #include<string.h> intmain(intargc,constchar*argv[]) { charstr[]="hellowelcometochina\0";//源字符串 printf("inputastring:\n"); charstr2[20];//要查找的字符串 fgets(str2,19,stdin); char*res; res=memchr(str,str2[0],strlen(str));//根据要查找的字符串第一个字符,切割源字符串 if(res==NULL) { printf("findnothing...\n"); return0; } intn; while(1) { n=memcmp(res,str2,strlen(str2)-1);//比较 if(n!=0) { if(strlen(res)<=strlen(str2))//切割出的字符串小于要查找字符串的长度 { printf("findnothing...\n"); return0; } else { //根据要查找的第一个字符继续切割 res=memchr(res+1,str2[0],strlen(res)); if(res==NULL) { printf("findnothing...\n"); return0; } } } else {//如果n=0,找到 printf("%sisfound..\n",str2); return0; } } }
通过以上具体的实现代码,希望大家能够理解,对大家有所帮助。