当前位置: 首页 > news >正文

什么叫商业网站前端网站开发研究报告

什么叫商业网站,前端网站开发研究报告,安全联盟可信网站认证,如何销售游戏网站建设由于C语言的正则表达式API相对比较简易.默认API只有regcomp/regerror/regexec/regfree这些函数.相对于其他的高级语言中正则表达式所所能实现的功能(如:查找/替换)有所欠缺.所以想着自己写下一些需要的函数以备后续需要使用. #ifndef _E_REGEX_INCLUDE #define _E_REGEX_INCLU…

由于C语言的正则表达式API相对比较简易.默认API只有regcomp/regerror/regexec/regfree这些函数.相对于其他的高级语言中正则表达式所所能实现的功能(如:查找/替换)有所欠缺.所以想着自己写下一些需要的函数以备后续需要使用.

#ifndef _E_REGEX_INCLUDE
#define _E_REGEX_INCLUDE
#include <regex.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdbool.h>typedef int errno_t;static size_t position = 0;//functions prototype
char* regnext(regex_t* regex,char* content);
void _r_release(void);
bool regreplace(regex_t* regex,char** content,char* replacement);
void regreplaceAll(regex_t* regex,char** content,char* replacement);int main(void){char* content = (char*)"sjdlf12323ldjslfjsjf133334";char* pattern = (char*)"([[:digit:]][[:digit:]])\\1";regex_t regex;errno_t state = regcomp(&regex,pattern,REG_EXTENDED);if(state){char* errbuf = calloc(20,sizeof(char));regerror(state,&regex,errbuf,20);fprintf(stderr,"Regex:%s compile failed.\n""Reason: %s\n",pattern,errbuf);free(errbuf);regfree(&regex);exit(EXIT_FAILURE);}printf("content: %s\n",content);char* replacement = (char*)"";regreplaceAll(&regex,&content,replacement);printf("content: %s\n",content);regfree(&regex);
}//find next match
char* regnext(regex_t* regex,char* content){regmatch_t matches[regex->re_nsub + 1];errno_t state = regexec(regex,content,regex->re_nsub + 1,matches,0);if(state == REG_NOMATCH){_r_release();return NULL;}char* reval = (char*)calloc(matches[0].rm_eo - matches[0].rm_so + 1,sizeof(char));memcpy(reval,content + position + matches[0].rm_so,matches[0].rm_eo - matches[0].rm_so);position += matches[0].rm_eo;return reval;
}//replace first
bool regreplace(regex_t* regex,char** content,char* replacement){regmatch_t matches[regex->re_nsub + 1];errno_t state = regexec(regex,*content,regex->re_nsub + 1,matches,0);if(state == REG_NOMATCH){return false;}char* newContent = (char*)calloc(strlen(*content) + strlen(replacement) - (matches[0].rm_eo - matches[0].rm_so),sizeof(char));size_t head = matches[0].rm_so;size_t middle = strlen(replacement);size_t end = strlen(*content) - matches[0].rm_eo;memcpy(newContent,*content,head);memcpy(newContent + head,replacement,middle);memcpy(newContent + head + middle,*content + matches[0].rm_eo,end);*content = newContent;return true;
}//replace all
void regreplaceAll(regex_t* regex,char** content,char* replacement){for(;regreplace(regex,content,replacement););
}void _r_release(void){position = 0;
}#endif

http://www.yayakq.cn/news/40185/

相关文章:

  • 百度网站验证方法广告设计毕业设计
  • 长治做网站多少钱关于网站建设的职位
  • 找人建站做网站需要注意什么问题局域网组网方案
  • 网站丢失了怎么办建筑网2016农村别墅图大全
  • 抚州专业的企业网站建设公司打开一张图片后点击跳转到网站怎么做
  • 贵州网站建设服务平台好的网页制作公司有哪些
  • 彩票资讯网站建设wordpress 菜单 icon
  • 做模板网站乐云seo效果好三星网上商城退款
  • 温州建设集团有限公司网站模板网站的优缺点
  • 建立网站需要多少钱 激发湖南岚鸿新闻发布会视频
  • 采集网站会收录吗如何建设购物网站
  • 网站设计什么样风格会高端些免费的域名和网站
  • 鹤壁做网站的联系方法网站短期培训学校
  • 金融类网站源码郴州必去三个景点
  • 视频做网站游戏开发公司排名
  • 上海装修网站大全康定网站建设公司
  • 开发公司工程部工作总结百度快速优化排名软件
  • 企业网站的推广方法有哪些网站开发与维护实训总结
  • 加强网站建设的意义wordpress php页面跳转
  • 湖南省专业建设公司网站的机构学校网站制作模板
  • 齐诺网站建设东莞网站建设做网站抛丸机网站怎么做
  • 做个外贸网站多少钱网页制作软件s
  • 营销型网站建设优化建站科技公司主要是做什么的
  • 浙江众安建设集团有限公司网站小说网站静态页面模板
  • 网站平台建设属于什么采购企业微信怎么注册
  • 怎么用网站做word文件格式青岛网站建设商家
  • asp.net 4.0网站开发与项目实战(全程实录) pdf建站推广免费公司
  • 企业网站后台管理模板网站建设应注重实用性
  • 做推广必须知道的网站吗影楼行业网站
  • 俱乐部手机网站模板wordpress 仿百度文库