«

»

C语言的正则表达式库与AIX Tuxedo 8.1的buildclient编译问题。

c语言 pcre正则表达式能提高字符串处理效率,但标准C中却无相应处理函数。Perl风格的正则表达式是现在使用最广的一种正则流派,相应的Perl-Compatible Regular Expression(PCRE)库是一个广泛使用的perl兼容正则表达式C函数库。其最初为Linux类操作系统设计,在网上可下载源码。上传至Aix机并解压缩后,执行下面命令编译和安装:

会看到,库文件将被安装至/usr/local目录下的bin/lib/include等目录下。然而./configure有更多选项,包括将库文件安装至其它目录下。从configure代码来看,是支持Aix的。

编译成功后,可将pcre.h拷入应用目录。

那么在使用了正则函数后,如何在buildclient编译呢。由于安装在/usr/local下,并非系统库目录,因而需设置LD_LIBRARY_PATH和LIB_PATH。开始时将其以-l 参数加在buildclient选项后,反复出错,后来才发现,-f 与-l ,指的是tuxedo库之前和之后,并非指定链接库的意思。因而在将libpcre.a拷入后,加以-f libpcre.a后,编译应用成功。当然这并非最好办法。在configure时将其安装入系统路径要方便许多。

正则函数使用:

调用:

匹配,返回0,不匹配,返回-1。

 

1 星2 星3 星4 星5 星 (尚无评分)
Loading...Loading...

相关文章

Python的代码缩进 在Fortran之后,好象没见过如此对代码书写位置有严格要求的语言。 对于一个出现了不过20年的相对新型的...
64位Linux下编译器的指针长度 其实一直没有认真测试过这个问题,而64位系统通常也对32位程序提供了很好的兼容性。 已知的是,int在32...
RHEL的GCC中print打印%的问题。 RHEL5.5 64位系统,GCC编译环境,版本就不记得了。没时时间深究这个问题,仅作记录。 一条printf("\%");...
C语言中调用Python函数 C中可以嵌入方式调用Python脚本程序。混合语言编程的唯一好处就是取长补短。比如C语言的性能和底层操作...
C语言的字符串库Bstrlib C语言本身的字符串函数库非但不全,而且有某些安全隐患,如以'\0'为字符串结尾,但'\0'本身实际为一字符...
银联文档中关于Socket连接属性的有用信息 在利用socket技术编写通信程序时,为了保证通信双方可以正常通信,需要设置相关的选项,其中有的选项是协...
用Socket的getpeername获得客户端的ip和端口 getsockname用于获得本地地址端口,getpeername用于获取远端地址端口。但两者的使用时机并不相同。对于...
C的求子串及定位串函数,纠结。 用C#和java之类现代语言久了,字符串操作简直是随心所欲。昨天需在C下写一报文串处理,才发现C中的字符...

发表评论

电子邮件地址不会被公开。