① c语言中怎么判断一个字符串包含在另一个字符串里面
#include<stdio.h>
#include<string.h>
intmain()
{
intflag;
chara[30]="iamtired";
charb[100];
scanf("%s",b);
if(strstr(b,a))
flag=1;
else
flag=0;
printf("flag=%d ",flag);
return0;
}
② 有没有开源的C语言实现的正则表达式
正则表达式 是一门数学应用到计算机中的表达式。不是专属于哪种语言,现在各大主流语言都可以通过标准库 或者 模块 或者函数调用正则表达式。
包括 C C++ PYTHON ruby PHP ASP等等
下面贴出一段C语言 使用正则表达式的例子
1#include<stdio.h>
2#include<sys/types.h>
3#include<regex.h>
4#include<memory.h>
5#include<stdlib.h>
6
7intmain(){
8
9char*bematch="[email protected]";
10char*pattern="h{3,10}(.*)@.{5}.(.*)";
11charerrbuf[1024];
12charmatch[100];
13regex_treg;
14interr,nm=10;
15regmatch_tpmatch[nm];
16
17if(regcomp(®,pattern,REG_EXTENDED)<0){
18regerror(err,®,errbuf,sizeof(errbuf));
19printf("err:%s ",errbuf);
20}
21
22err=regexec(®,bematch,nm,pmatch,0);
23
24if(err==REG_NOMATCH){
25printf("nomatch ");
26exit(-1);
27}elseif(err){
28regerror(err,®,errbuf,sizeof(errbuf));
29printf("err:%s ",errbuf);
30exit(-1);
31}
32
33for(inti=0;i<10&&pmatch[i].rm_so!=-1;i++){
34intlen=pmatch[i].rm_eo-pmatch[i].rm_so;
35if(len){
36memset(match,'