C语言正则匹配库(regex.h)

简介: C语言正则匹配库(regex.h)

教程: https://blog.csdn.net/ljp1919/article/details/47753559

尝试:

#include<stdio.h>
#include<regex.h>
#include<string.h>
int main(int argn, char **argv)
{
  char *pattern = "[0-9]*qq.com";
  char *string = argv[1];
  char buf[100];
  int ret = 0;
  int i = 0;
  // 存放匹配后的信息
  const size_t nmatch = 5;
  regmatch_t pm[5];
  // 存放编译后的信息
  regex_t reg;
  // 编译
  ret = regcomp(&reg, pattern, REG_EXTENDED);
  if (ret != 0)
  {
    printf("编译错误\n");
    return -1;
  }
  // 匹配
  ret = regexec(&reg, string, nmatch, pm, 0);
  if (ret == REG_NOMATCH)
  {
    printf("未匹配到结果\n");
    return 0;
  }
  else if (ret != 0)
  {
    printf("匹配错误\n");
    return -1;
  }
  // 输出匹配结果
  for (i=0;i<nmatch&&pm[i].rm_so!=-1;i++)
  {
    strncpy(buf, string+pm[i].rm_so, pm[i].rm_eo-pm[i].rm_so);
    printf("%d: %s\n", i, buf);
  }
  // 释放
  regfree(&reg);
  return 0;
}
目录
相关文章
|
1月前
|
存储 算法 程序员
C语言:库函数
C语言的库函数是预定义的函数,用于执行常见的编程任务,如输入输出、字符串处理、数学运算等。使用库函数可以简化编程工作,提高开发效率。C标准库提供了丰富的函数,满足各种需求。
ly~
|
2月前
|
数据可视化 BI API
除了 OpenGL,还有哪些常用的图形库可以在 C 语言中使用?
除了OpenGL,C语言中还有多个常用的图形库:SDL,适合初学者,用于2D游戏和多媒体应用;Allegro,高性能,支持2D/3D图形,广泛应用于游戏开发;Cairo,矢量图形库,支持高质量图形输出,适用于数据可视化;SFML,提供简单接口,用于2D/3D游戏及多媒体应用;GTK+,开源窗口工具包,用于创建图形用户界面。这些库各有特色,适用于不同的开发需求。
ly~
544 4
|
2月前
|
存储 安全 编译器
深入C语言库:字符与字符串函数模拟实现
深入C语言库:字符与字符串函数模拟实现
|
7月前
|
C语言 存储
C语言—部分库函数的模拟实现
C语言—部分库函数的模拟实现
|
4月前
|
C语言
C语言中的math库概述
C语言中的math库概述
130 1
|
4月前
|
存储 Serverless C语言
C语言中的标准库函数
C语言中的标准库函数
68 0
|
4月前
|
API 开发工具 C语言
C语言与图形界面:利用GTK+、Qt等库创建GUI应用。
C语言与图形界面:利用GTK+、Qt等库创建GUI应用。
236 0
|
6月前
|
存储 移动开发 C语言
技术心得记录:嵌入式开发中常用到的C语言库函数
技术心得记录:嵌入式开发中常用到的C语言库函数
67 1
|
6月前
|
C语言
C语言的标准库:string.h, math.h, stdlib.h
C语言的标准库:string.h, math.h, stdlib.h
|
6月前
|
C语言
【海贼王编程冒险 - C语言海上篇】库函数怎样模拟实现?
【海贼王编程冒险 - C语言海上篇】库函数怎样模拟实现?
39 1