一个段程序用到了<regex.h>中的正则表达式来识别字符串,写个小博客给自己记录一下。
也是查过才发现原来C语言也可以直接使用库函数来进行字符串匹配,当然<regex.h>由于不是标准的C语言库函数,所以只在linux系统中有,Windows的用户可能就得另想办法了。
<regex.h>中有四个函数,分别是:
其中包括两种数据类型regex_t与regmatch_t。int regcomp(regex_t *preg, const char *pattern, int cflags); int regexec(const regex_t *preg, const char *string, size_t nmatch, regmatch_t pmatch[], int eflags); size_t regerror(int errcode, const regex_t *preg, char *errbuf, size_t errbuf_size); void regfree(regex_t *preg);
四个函数对应着运用正则表达式进行字符串匹配的四个步骤。
1.首先是regcomp