C语言正则表达式regex

From: http://hi.baidu.com/david_jlu/blog/item/87ada1dbb9af6a60d0164eda.html

正则表达式在linux下应用非常广泛,经常使用sed、awk、grep、vi、emacs等都支持正则表达式,处理最好的莫过于perl,perl把正则表达式内置到语言内,使用起来非常方便。正则表达式的最大功用就是减轻程序员负担(程序员都很懒),简化处理字符串的复杂度,用C写一个split函数估计至少要15分钟,而这些东东都已经成为正则表达式默认支持的工具了。

ISO标准是不支持正则表达式的,这也导致很多程序员放弃C而转向perl、python的原因,不过POSIX是支持的,我在APUE读书笔记中提到过,就是regex.h:

#include <sys/types.h>
#include <regex.h>

int regcomp(regex_t *preg, const char *regex, 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);

正常的使用方式:编译正则表达式(regcomp)、匹配正则表达式(regexec)、释放正则表达式(regfree)

下面是一个例子:

点击看大图


这个是匹配Email的程序,按照上面的三步走就可以。


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/406613.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PL/SQL块中不能直接执行DDL语句(错误)

在PL/SQL块中不能直接执行DDL语句(后篇批量删除表时却明明在PL/SQL块中使用了DROP&#xff0c;而且执行成功&#xff0c;厄...自打三十大板...谁来救我...)declarev_string varchar2(1000);beginv_string:create table dm_test as select * from dm_mpg_test where nyr20…

立足优势,你的网站会更精彩

前几天跟一个做培训的朋友喝茶&#xff0c;聊天期间我问他们公司主要做哪些方面的培训&#xff0c;他笑着说他们公司的业务范围可广了&#xff0c;IT培训&#xff0c;MBA考辅&#xff0c;婴幼儿教育&#xff0c;英语培训......言语中流露出无比的自豪&#xff0c;我最后问了一句…

POSIX风格正则表达式

From: http://blog.chinaunix.net/space.php?uid20501242&doblog&id1940007 4.9 POSIX风格正则表达式 POSIX-Style Regular Expressions POSIX 你已经了解了正则表达式的基础知识&#xff0c;接下来我们可以讨论一下其细节。POSIX风格的正则表达式使用Unix地区系统…

Spring对事务管理的支持的发展历程(基础篇)

1、问题Java代码 Connection conn DataSourceUtils.getConnection(); //开启事务 conn.setAutoCommit(false); try { Object retVal callback.doInConnection(conn); conn.commit(); //提交事务 return retVal; }catch (Excep…

最新xampp下安装mod_security,mod_evasive,mod-cband笔记

来源&#xff1a;纯月部落mod_security官方的文档有一些问题&#xff0c;亲手装了一遍&#xff0c;现将问题记录如下Windows xampp版本 假设xampp安装在D:\xampp1 下载mod_security-2.5.9-win32.zip&#xff0c;解压缩2 将libxml2.dll拷贝到D:\xampp\apache\bin下面3 将mod_sec…

Bash字符串处理(与Java对照) - 17.判断是否以另外的字符串结尾

From: http://codingstandards.iteye.com/blog/1187353 In Java String.endsWith oolean endsWith(String suffix) 测试此字符串是否以指定的后缀结束。 StringUtils.endsWith & StringUtils.endsWithIgnoreCase & StringUtils.endsWithAny org.apache.c…

[转载]用c写PHP的扩展接口(php5,c++)

原文&#xff3b;http://bugs.tutorbuddy.com/php5cpp/php5cpp/&#xff3d;第1节. 开始之前开始前&#xff0c;我要说明&#xff1a;这篇文章所描述的主要是在UNIX的PHP环境上的。另外一点我要说明的是&#xff1a;文中所介绍的方法在PHP 4.3.x和PHP 5下都是可行的。尽管我们在…

web前端——transform变形 旋转角度正负的判断

在使用CSS的transform的变形效果的时候&#xff0c;总是被这个角度的正负搞的头大&#xff0c;特意写出来&#xff0c;和大家分享 首先&#xff0c;我们要学会怎么看 假设需要围绕x轴做旋转&#xff0c;那么我们将x轴的正向指向我们自己&#xff0c;然后再看顺时针和逆时针&am…

话里话外:成功的ERP需要全程的流程变革(三)

成功的ERP需要全程的流程变革流程变革最佳实践5步走流程变革的最佳实践&#xff0c;是将一个颇具风险的流程重组过程分解为几个分步实现的步骤&#xff0c;并与ERP的实施同步开展&#xff0c;再经过几轮优化改进的循环&#xff0c;达到变革的目标——提高流程的效益和效率。伴随…

Bash字符串处理(与Java对照) - 18.格式化字符串

From: http://codingstandards.iteye.com/blog/1198098 In Java class Formatter 参见&#xff1a;http://download.oracle.com/javase/6/docs/api/java/util/Formatter.html#syntax String.format static String format(String format, Object... args) 使用指定…

Unity基础知识学习笔记二

1&#xff0c;object Instantiate(object original,Vector3 position,Quaternion rotation) 克隆原始物体&#xff0c;并返回克隆物体。例如&#xff1a;Instantiate(prefab,new Vector3(1,1,1),Qutaternion.identity);克隆一个prefab物体。2,InputManager,输入管理器&#xff…

JavaScript 监听手机端的touch滑动事件(滑动手势)

如何监听移动端滑动手势&#xff08;上 / 下 / 左 / 右滑动&#xff09;&#xff0c;今天记录下。 var startx, starty;//获得角度 function getAngle(angx, angy) {return Math.atan2(angy, angx) * 180 / Math.PI; };//根据起点终点返回方向 1向上滑动 2向下滑动 3向左滑动 …

雅虎衰落源于公司领袖缺乏远见与决断个性

文/ 周鸿祎雅虎的衰落&#xff0c;公司领袖负有不可推卸的责任&#xff0c;杨致远缺乏做出决断的个性和能力。 与充满商业智慧的微软和Google相比&#xff0c;雅虎显得太过幼稚。我之前创立的3721卖给了雅虎&#xff0c;后来还有过一段合作&#xff0c;所以对它有较深入的了解。…

java的Random类详解

Random类是一个专门用来生成一个伪随机数的类&#xff0c;这个类提供了两个构造函数&#xff0c;一个使用默认的种子&#xff0c;另一个需要程序员显示传入一个long型整数的种子。与Math类中的random方法生成的伪随机数不同的是&#xff0c;Math的random方法生成的伪随机数取值…

Bash字符串处理(与Java对照) - 19.查找字符的位置

From: http://codingstandards.iteye.com/blog/1198917 In Java String.indexOf & String.lastIndexOf int indexOf(int ch) 返回指定字符在此字符串中第一次出现处的索引。 int indexOf(int ch, int fromIndex) 从指定的索引开始搜索&#x…