C语言 PCRE正则表达式 函数解释

求指教:_PCRE库函数中,pcre_exec()的返回值是什么意思? *ovector数组的元素又是代表什么意_?
#include
#include
#include
#include
void main()
{
pcre *code;
char *src="Tel: 18701252677 18829696789 17867890987 E-mail:gsxu@sonicom.com.cn";
char *pattern="(([+86]|[86])?[0-9]{11})";
int i=0;
int ovector[15]={0};
int rc,exec_offset=0;
const char *sub;
const char *errptr;
const char **listptr;
int erroffet;
char temp[512]={0};

code=pcre_compile(pattern,0,&errptr,&erroffet,NULL);
//code=pcre_compile(pattern,PCRE_DOTALL,&errptr,&erroffet,NULL);
rc=pcre_exec(code,NULL,src,strlen(src),0,PCRE_BSR_ANYCRLF,ovector,15);

printf("match:%d\n",rc);
printf("start:%d end:%d\n",ovector[2],ovector[3]);
if(rc>0)
{
    for(i=0;i++;i<rc)
    {
        pcre_get_substring(src,ovector,rc,0,&sub);/////////////???????????????????????????????????
        printf("%s\n",sub);
        //exec_offset=ovector[i];
        //i++;
        pcre_free_substring(sub);
    }
}
pcre_get_substring_list(src,ovector,rc,&listptr);
printf("%s\n",*listptr);
pcre_free_substring_list(listptr);

free(code);

}

为什么数组ovector的元素{5,16,5,16,-1,.......}???????????????

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
c语言正则表达式库pcre使用例子
#include n#include n#include n#include n#include n#include n#include n#include nnn#define OVECCOUNT 30 /* should be a multiple of 3 */n#define EBUFLEN 128n#define BUFLEN 1024nnint main_adfs()n{n pc
linux下使用pcre库进行正则表达式
//test.cpp n#include
c语言正则表达式pcre
pcre;pcre.h;regex.h;pcre.lib;pcre3.dll,c语言正则表达式
PCRE 简介
介绍nnPCRE (Perl Compatible Regular Expressions) 是一个用C语言编写的正则表达式函数库。本文简要介绍PCRE的编译和使用方法。nn编译nn从PCRE官网下载后,解压(本人下的版本为pcre2-10.21)。仔细阅读 README 和 NON-AUTOTOOLS-BUILD,里面介绍了很多编译的方法。由于本人需要在VS下开发,因此选择CMake编译。 n1...
re2正则表达式匹配引擎的c接口版本cre2的中文使用手册
1 基本类型定义rnrnrnrn不透明类型:cre2_regexp_t rnrnrn正则表达式对象的不透明类型; 它用于 rn声明指向对象的指针。此类型的实例可用于 rn任意数量的匹配操作,并且对于rnrnrnrnrn多个线程并发使用是安全的。rnrnrnrnStruct Typedef:cre2_string_t rnrnrn用于引用另一个 rn字符串的一部分的简单数据结构。它有以下领域:rnrnrnrnrn 'const char * data'...
C 正则表达式的完全匹配 部分匹配及忽略大小写的问题
C 正则表达式的完全匹配 部分匹配及忽略大小写的问题
php PCRE函数的使用
替换字符串nnnnmixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &amp;amp;$count ]] )nnnnmixed preg_filter ( mixed $pattern , mixed $replacement , mixed $subjec...
正则表达式匹配中文字符
老早以前,就搞过这块了,查过好多资料,不多当下又忘记了,而且当时总结的资料不知道跑哪里去了,再次总结下:rnjavascript使用:rnrn[\u4e00-\u9fa5]rnrnjava中使用的也是:rnrn[\u4e00-\u9fa5]rnrnrnrn网上有人说:rnrn现在网上大多数用于判断中文字符的是 \u4E00-\u9FA5 这个范围是只是“中日韩统一表意文字”这个区间,但这不是全部,
PHP 中的正则表达式详解
简介正则表达式(Regular Expression),也简称为 RE、Reg、RegEx 或 RegExp。正则表达式的作用是用来查找或者替换符合某种模式(规则)的字符串。正则表达式是一个从左到右匹配目标字符串的模式(pattern)。大多数字符自身就代表一个匹配自身的模式。在 PHP 中,有两种处理正则表达式的扩展库。POSIX 扩展PCRE 扩展POSIX 扩展自 PHP 5.3.0 起, ...
C语言兼容的正则表达式(有实例)
C语言兼容的正则表达式,有使用例题。(PCRE - Perl Compatible Regular Expressions)
c实现极简单的正则表达式解析
c实现极简单的正则表达式解析rnrndefine 头文件rnrn///////////////////////////////////define 头文件///////////////////////////////////nn#ifndef _DEFINE_H_n#define _DEFINE_H_nn#define REGEX_LENGTH 40nn//typedef unsigned cha
在linux C中使用正则表达式pcre
程序示例:#include &amp;lt;stdio.h&amp;gt; #include &amp;lt;string.h&amp;gt; #include &amp;lt;pcre.h&amp;gt; #define OVECCOUNT 3000 #define EBUFLEN 128 #define BUFLEN 1024   int main() {     pcre *re;     const char *error;     i...
用C语言实现正则表达式匹配器
《代码之美》读书笔记 n 源码出自《The Practice of Programming》一书的第9章 n 用来处理以下模型n n n 字符n 含义 .(句点)n 匹配任意的单个字符n ^n 匹配输入字符串的开头n $n 匹配输入字符串的结尾n *n 匹配前一个字符的零个或者多个出现/* match: search for regexp anywhere in text
正则之PCRE库
目录nn nn什么是PCRE库?nn1.PCRE库简介nn2.PCRE正则基础知识nnPCRE库的安装(linux)nnPCRE库的使用nn1.PCRE库的函数接口nn2.PCRE使用过程nn3.PCRE实例nn参考文章nn什么是PCRE库?nn1.PCRE库简介nnPCRE(Perl Compatible Regular Expressions):perl语言兼容正则表达式。PCRE是一个用C语...
安卓下编译pcre
在C或C++代码中常遇到从一堆数据中提取某个字段,苦于C或C++没有标准的正则表达式库,只好动手编译一个。看了网上关于几种正则表达式库的描述,凭感觉选了pcre。n下面开始动手编译。n1、首先从网站上下载了7.8版本,网址是http://sourceforge.net/projects/pcre/files/pcre/7.8/n      下载完成后将压缩包解压。n2、在解压后的根目录里面
pcrecpp好用的正则表达式
#include &amp;lt;iostream&amp;gt;n#include &quot;pcrecpp.h&quot;nnusing namespace std;nint main(int argc, char * argv[])n{n string sRex = argv[1]; //正则表达式n string sName = argv[2]; //待匹配的文件名nn pcrecpp::RE re(sR...
c语言函数,库函数,实例,详细解释
c语言函数,库函数,实例,详细解释,c语言函数,库函数,实例,详细解释,c语言函数,库函数,实例,详细解释
pure-8.40.tar
PCRE(Perl Compatible Regular Expressions中文含义:perl语言兼容正则表达式)是一个用C语言编写的正则表达式函数库,由菲利普.海泽(Philip Hazel)编写。PCRE是一个轻量级的函数库,比Boost之类的正则表达式库小得多。PCRE十分易用,同时功能也很强大,性能超过了POSIX正则表达式库和一些经典的正则表达式库 [1] 。
pcretest正则命令
                                 pcretest正则命令n nn最近在学习nginx,nginx rewrite依赖于PCRE库,所以需要在linux系统中编译安装PCRE库。具体步骤如下:nn1.下载PCRE包nn首先去官网下载pcre的安装包nn如果通过FTP的方式,下载地址为:ftp://ftp.csx.cam.ac.uk/pub/software/prog...
正则表达式pcre
正则表达式pcre
PCRE兼容正则表达式函数
1.preg_grep()函数rnarray preg_grep(string pattern,array input)rn函数功能:用input中的元素一一匹配表达式pattern,最后返回所有相匹配的元素所组成的数组rn$preg = '/\d{3,4}-?\d{7,8}/';rn$arr = array('043212345678','0431-7654321','12345678');rn
C语言中使用正则表达式
int regcomp(regex_t *preg, const char *regex, int cflags);n说明n当正则表达式regex,不符合正则表达式语法规范时,regcomp函数调用会失败。否则,regcomp函数调用成功,并将编译好的结果存放在preg参数中,以便后序使用。n参数nnpreg:字符串regex编译成preg,preg作为输出参数n正则表达式串regexn标志位cf...
正则表达式的坑与调试
正则表达式的坑与调试nnnginx 配置的正则表达式nnginx 改写模块中的subs_filter 正则匹配模式配置比 传统的正则表达式 在使用转义 \ 时 多一个 \n示例:n(\\||%2f%2f|%2F%2F|\'|\&amp;quot;|//|\\\/\\\/)([0-9a-zA-Z\-]*\.[0-9a-zA-Z\-\.]+)(:?[0-9]*)(%2f|%2F|/|\&amp;quot;|\\\/|\'|\\?|\\...
正则表达式(regex)C语言源码,超强查找/替换算法
正则表达式是一个很强的工具,可以在你的软件中增强查找、替换、匹配等功能。附件中封装了Henry Spencer的regex library源码,有说明和范例,纯C可移值,简单易用。
C语言“正则表达式”字符串处理sscanf(),使用前缀技巧、匹配邮箱等
一般的字符串处理函数可以使用C标准库的string.h,字符串匹配、字符串反转、在字符串中查找子串位置等。但string.h仍然满足不了我们的需求。nn来几个例题:(不允许使用c++)nn1、要求把一个字符串两端的空白符(可能有多个空格和TAB)给去掉,n例如:“ asd123 qwer ”,要求处理完之后结果为:"asd123 qwer"。n有人可能会想,这么简单的功能,手写一个函...
正则表达式的使用举例(附带说明R中sub函数的运用)
一、sub()函数的简单介绍sub(&quot;b&quot;, &quot;x&quot;, c(&quot;abbc&quot;, &quot;bbcd&quot;, &quot;cde&quot;)) 结果为&quot;axbc&quot; &quot;xbcd&quot; &quot;cde&quot; ,只把一个b替换成xgsub(&quot;b&quot;, &quot;x&quot;, c(&quot;abbc&quot;, &quot;bbcd&quot;, &quot;cde&quot;)
PCRE2 正则库在Windows环境编译
PCRE2 正则库在Windows环境编译
pcre v8.35
pcre 正则表达式 最新版
正则引擎在数据包匹配中的工程分析
匹配 常见的通用匹配算法有字符串匹配和正则匹配。字符串匹配常见的算法有Boyer-Moore算法、orspool算法、unday算法、MP算法、R算法、AC自动机。Boyer-Moore、Horspool、Sunday算法都是基于后缀数组的匹配算法,区别在于移动的方式不一样。MP是前缀匹配算法,R算法是hash匹配,AC自动机可以同时匹配多个pattern。正则匹配有两种NFA和DFA,都是基于有
linux C正则表达式
rn    标准c/c++不支持正则表达式,但linux下内置正则表达式处理,相对java的Pattern而言,处理比较繁琐。rn rn#include &amp;lt;regex.h&amp;gt;rnrn/**rn *@brief 正则表达式测试rn */rnvoid reg_test()rn{rn const char *name = &quot;jmA1234kettas&quot;;rn const char *pa...
TPerlRegEx for pcre 8.20
delphi 封装 pcre 8.20的正则表达式
pcre-8.42.tar.gz
perl语言兼容正则表达式)是一个用C语言编写的正则表达式函数库,由菲利普.海泽(Philip Hazel)编写。PCRE是一个轻量级的函数库,比Boost之类的正则表达式库小得多。PCRE十分易用,同时功能也很强大,性能超过了POSIX正则表达式库和一些经典的正则表达式库 [1] 。 和Boost正则表达式库的比较显示 [2] ,双方的性能相差无几,PCRE在匹配简单字符串时更快,Boost则在匹配较长字符串时胜出---但两者差距很小,考虑到PCRE的大小和易用性,我们可以认为PCRE更值得考虑。 PCRE被广泛使用在许多开源软件之中,最著名的莫过于Apache HTTP服务器和PHP脚本语言、R脚本语言,此外,正如从其名字所能看到的,PCRE也是perl语言的缺省正则库。 PCRE是用C语言实现的,其C++实现版本是PCRE++。
C/C++中的正则表达式库——PCRE, PCRE++
C/C++中的正则表达式库——PCRE, PCRE++,比boost::regex更好用。
PHP中的正则表达式及PCRE函数
PCREnnPHP有两种使用不同的方式来使用正则表达式:PCRE(Perl兼容表示法,preg_*)函数 和 POSIX(POSIX 扩展表示法,ereg_*) 函数。幸运的是,POSIX 家族函数从 PHP 5.3.0 开始就被弃用了。nnnnnn正则表达式nnnn界定符nn经常使用的分隔符是正斜线(/)、hash符号(#) 以及取反符号(~)。下面的例子都是使用合法分隔符的模式nn/foo b
正则匹配---C语言实现
实现一个能匹配, ^ ,* ,. ,$ ,的正则表达式/*************************************************************************n > File Name: mathRE.cn > Author: guoqingyaon > Mail: stepbystepto@163.com n > Created
Linux C 正则表达式运用(regex.h)
一个段程序用到了中的正则表达式来识别字符串,写个小博客给自己记录一下。rn也是查过才发现原来C语言也可以直接使用库函数来进行字符串匹配,当然由于不是标准的C语言库函数,所以只在linux系统中有,Windows的用户可能就得另想办法了。rn中有四个函数,分别是:rnrnint regcomp(regex_t *preg, const char *pattern, int cflags);nint
windows vc6 pcre正则表达式编译好的文件
vc c\c++ 中使用pcre正则表达式 已编译! Debug跟Release两个版本
PCRE 正则表达式 DLL 工程
PCRE 正则表达式 DLL 完整工程 可以使用
正则表达式规则及C语言测试代码
正则表达式规则n 规则数据来源于runoobcom,如果侵权,请告知删除,谢谢。n-非打印字符n 字符n 描述 \fn 匹配一个换行符,等价于\x0x和\cLn \nn 匹配一个换行符,等价于\0x0a和\cJn \rn 匹配一个回车符,等价于\x0d和\cMn \tn 匹配一个制表符,等价于\0x09和\cln \vn 匹配一个垂直制表符,等价于\x0b和\cKn \s
PHP学习笔记--正则表达式及PCRE兼容正则表达式函数
正则表达式手册。点击查看nn正则表达式在线测试工具:http://tool.oschina.net/regex/nn
文章热词 统计学稳健估计opencv函数 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 班级解释区块链 解释大数据的视频