当前位置:IT09数码网 > 热点 > I T 资讯 > 正文

如何在C语言中巧用正则表达式-大神来支招(4)

http://www.it09.cn 时间:2016-10-29 23:43来源:未知

int regexec(const regex_t *preg,

  const char *string, size_t nmatch,

  regmatch_t pmatch[], int eflags);

  typedef struct {

  regoff_t rm_so;

  regoff_t rm_eo;

  } regmatch_t;

  参数preg指向编译后的正则表达式,参数string是将要进行匹配的字符串,而参数nmatch和pmatch则用于把匹配结果返回给调用程序,最后一个参数eflags决定了匹配的细节。

  在调用函数regexec()进行模式匹配的过程中,可能在字符串string中会有多处与给定的正则表达式相匹配,参数pmatch就是用来保存这些匹配位置的,而参数nmatch则告诉函数regexec()最多可以把多少个匹配结果填充到pmatch数组中。当regexec()函数成功返回时,从string+pmatch[0].rm_so到string+pmatch[0].rm_eo是第一个匹配的字符串,而从string+pmatch[1].rm_so到string+pmatch[1].rm_eo,则是第二个匹配的字符串,依此类推。

【免责声明】本文仅代表作者个人观点,与IT09数码网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。您若对该稿件内容有任何疑问或质疑,请联系本网将迅速给您回应并做处理。