c语言正则表达式使用
时间: 2023-11-27 07:47:52 浏览: 102
在C语言中使用正则表达式
4星 · 用户满意度95%
C语言中使用正则表达式需要借助regex.h头文件提供的函数。下面是一个简单的例子,演示了如何使用正则表达式在字符串中查找匹配的内容:
```c
#include <stdio.h>
#include <regex.h>
int main()
{
char *pattern = "hello";
char *text = "hello world";
regex_t regex;
int ret;
// 编译正则表达式
ret = regcomp(®ex, pattern, 0);
if (ret != 0) {
printf("regcomp error\n");
return 1;
}
// 在字符串中查找匹配的内容
ret = regexec(®ex, text, 0, NULL, 0);
if (ret == 0) {
printf("match\n");
} else if (ret == REG_NOMATCH) {
printf("no match\n");
} else {
printf("regexec error\n");
}
// 释放正则表达式
regfree(®ex);
return 0;
}
```
上述代码中,首先定义了一个正则表达式模式和一个待匹配的字符串。然后使用regcomp函数编译正则表达式,如果编译失败则返回错误码。接着使用regexec函数在字符串中查找匹配的内容,如果找到则输出“match”,否则输出“no match”。最后使用regfree函数释放正则表达式。
阅读全文