摘要: 我们最经常遇到的验证,就是电子邮件地址验证。网站上常见。各种网页脚本也都常用“正则表达式”(regular expression)对我们输入的电子邮件地址进行验证,判断是否合法。有的还能分解出用户名和域名。现在用C语言实现一下电子邮件地址验证程序,用的是POSIX正则表达式。由于用的是POSIX正则表达式,所以只能用gcc编译。 另外,据测试,只有Linux原版的gcc才能编译通过。如果用Windows中的MinGW或Cygwin的gcc编译不通过,错误是找不到头文件。 C语言源代码如下:/* * regex.c - 用正则表达式验证电子邮件地址 * * POSIX正... 阅读全文
posted @ 2012-10-07 19:06 叶剑飞Victor 阅读(603) 评论(0) 推荐(0) 编辑
摘要: 我们最经常遇到的验证,就是电子邮件地址验证。网站上常见。各种网页脚本也都常用“正则表达式”(regular expression)对我们输入的电子邮件地址进行验证,判断是否合法。有的还能分解出用户名和域名。现在用C++语言实现一下电子邮件地址验证程序,用的是C++ 11标准新增加的STL正则表达式。 源代码如下,该代码已在Visual Studio 2010上验证通过。g++ 4.6不支持C++ 11的STL正则表达式,g++ 4.6上编译可以通过,但运行时错误,抛出regex_error异常。因此,如果要在g++ 4.6上使用正则表达式,请用GNU正则表达式库或者用boost正则表达式... 阅读全文
posted @ 2012-10-07 12:50 叶剑飞Victor 阅读(9137) 评论(1) 推荐(0) 编辑
摘要: 以前操作系统课程设计的时候,我们在Linux操作系统中用C语言和POSIX线程库编写过线程同步与互斥。/* * thread_synchronization.c * * Copyright 2012 叶剑飞 * * 编译命令: * gcc thread_synchronization.c -o thread_synchronization \ * -std=gnu99 -pedantic-errors -D_REENTRANT -pthread -Wall * */#include #include #include #include #incl... 阅读全文
posted @ 2012-10-07 01:02 叶剑飞Victor 阅读(6904) 评论(0) 推荐(1) 编辑