C regex.h
C也是存在正则表达式的
上文中有一个样例代码,进行了测试
总结一下有些注意点:
1.上述代码的匹配子串很奇怪,为什么会出现
cnt= a very
cnt= a
cnt= very
cyc:**************
的结果??
2.可以使用^xxxx$来限定字符串从开头到结尾都要匹配
3.REG_NEWLINE的效果没试出来
现下想实现判断整串字符串都由数字和字母组成。
char *haa = "dasdwer213%1fsw";
char *regex = "^[0-9a-zA-Z]+$";
struct timeval s1, s2;
gettimeofday(&s1, NULL);
regex_t comment;
regcomp(&comment, regex, REG_EXTENDED | REG_NEWLINE | REG_NOSUB); // regmatch_t regmatch[100]; //如果不保存结果,那么不必申请这个
int j = regexec(&comment, haa, ,
NULL, );
printf("Get Code\n");
if (j == REG_NOERROR) {
printf("Success\n");
} else if (j == REG_NOMATCH) {
printf("Failed\n");
} else {
size_t len = regerror(j, &comment, NULL, );
// printf("Error Len :%d\n",len);
char buf[len];
bzero(buf, len);
regerror(j, NULL, buf, len);
printf("Error :%s\n", buf);
}
regfree(&comment);
gettimeofday(&s2, NULL);
int time = (s2.tv_sec - s1.tv_sec) * + (s2.tv_usec - s1.tv_usec);
printf("time :%d\n", time);
return ;
C regex.h的更多相关文章
- [02]APUE:POSIX 正则库(#include <regex.h>)
正则匹配流程: 声明一个 regex_t 类型的变量(结构体) regcomp 函数会将“正则匹配条件”写入此结构体,并编译成特定的二进制格式(加快匹配速度) 声明一个 regmatch_t 类型的变 ...
- iOS - Regex 正则表达式
1.Regex 定义 正则表达式又称正规表示法.常规表示法(英语:Regular Expression,在代码中常简写为 regex.regexp 或 RE),计算机科学的一个概念.正则表达式使用单个 ...
- REGEX.C GNU 提取过滤数据
今天被@SVCHAO 勾起兴趣来了.. 有把正则表达式兴趣捡起来了,试了下notepad++基本上语法倒是没有忘记,不过如果是用在嵌入式的方案的话,似乎还是有点费劲的. 先mark一个基础语法. 单 ...
- vs 2005 使用 boost regex
第一步: Boost 入门及其VS2005下编译boost库 boost.regex库安装指南 深入浅出之正则表达式(一) C++中三种正则表达式比较(C regex,C ++regex,boo ...
- Linux下自带的regex
Linux下可直接用regex.h来支持正则表达式. Android同样也有该头文件,可认为Android也是支持的. #include <sys/types.h> #include &l ...
- regcomp/regexec/regfree--POSIX regex functions
语法 #include <sys/types.h> #include <regex.h> int regcomp(regex_t *preg, const char *rege ...
- C++ regex
我TM看了很久的文档,还是无法理解为什么我用MinGW GCC 4.8.1编译的C++11 <regex>总是抛出异常:regex_error 还是下载boost regex吧 或者c语言 ...
- C++中三种正则表达式比较(C regex,C ++regex,boost regex)
工作需要用到C++中的正则表达式,以下三种正则可供参考 1,C regex #include <regex.h> #include <iostream> #include &l ...
- C正则库做DNS域名验证时的性能对比
C正则库做DNS域名验证时的性能对比 本文对C的正则库regex和pcre在做域名验证的场景下做评测. 验证DNS域名的正则表达式为: "^[0-9a-zA-Z_-]+(\\.[0-9a ...
随机推荐
- UML符号
转抄, 语言简练. 挺好. ------------------- ------------------- ------------------- ------------------- -- ...
- 九、.net core用orm继承DbContext(数据库上下文)方式操作数据库
一.创建一个DataContext普通类继承DbContext 安装程序集:Pomelo.EntityFrameworkCore.MySql 二.配置连接字符串(MySql/SqlServer都 ...
- SQL 添加索引
使用CREATE 语句创建索引 CREATE INDEX index_name ON table_name(column_name,column_name) include(score) 普通索引 C ...
- How to hosts
sudo cp /etc/hosts /etc/hosts.bak sudo cp ~/Desktop/hosts /etc/hosts sudo systemctl restart NetworkM ...
- cookie中的小错误
今天在练习 cookie时意外的报了这个错. 这句话的意思是一个不识别的字符[32]出现在了cookie当中由于tomcat的版本比较高,所以在addCookie时是不能使用空格的 而在ASCII码中 ...
- Codeforces Round #415 Div. 1
A:考虑每对最大值最小值的贡献即可. #include<iostream> #include<cstdio> #include<cmath> #include< ...
- Google浏览器——AxureRP_for_chorme_0_6_2添加
准备 链接:https://share.weiyun.com/5PVwSMA Google浏览器版本 步骤 压缩解压 首先把需要安装的第三方插件,后缀.crx 改成 .rar,然后解压,得到一个文件夹 ...
- 清北澡堂 Day2 上午 一些比较重要的关于数论的知识整理
1.算数基本定理: 对于任意的大于1的正整数N,N一定能够分解成有限个质数的乘积,即 其中P1<P2<...<Pk,a1,a2,...,ak>=1; 证: 存在性: 若存在最小 ...
- 洛谷P1123取数游戏题解
题目 这是一道简单的搜索题,考查的还是比较基础的东西,其时搜索有时候并不难写,主要是要想到怎么搜.比如这个题,如果想二维四个方向搜则没有头绪,反之因为搜索是用递归实现的,所以我们可以使用递归的特性,把 ...
- [HDU5536] Chip Factory
传送门:>Here< 题意:给出一个长度为N的序列,求$Max\{ (a_i + a_j) ⊕ a_k \}$ (i,j,k均不相同) ($N \leq 1000$) 解题思路 既然$O ...