Chinaunix首页 | 论坛 | 博客
  • 博客访问: 139730
  • 博文数量: 124
  • 博客积分: 70
  • 博客等级: 民兵
  • 技术积分: 1745
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-24 13:49
文章分类

全部博文(124)

文章存档

2011年(55)

2010年(14)

2009年(30)

2008年(25)

我的朋友

分类: WINDOWS

2009-08-07 17:32:11

(
 (?:
 (?:
  (?: https?://|ftp://)
  (?:
   (?:(?:[-_0-9a-z.~!$&'\(\)*+,;=]|(?:\%[0-9a-f]{2}))+\.)+(?:[-_0-9a-z.~!$&'\(\)*+,;=]|(?:\%[0-9a-f]{2}))+
  )  
 )
  |
  (?:
  (?:
   (?:[-_0-9a-z.~!$&'\(\)*+,;=]+@)?www\.(?:(?:[-_0-9a-z.~!$&'\(\)*+,;=]|(?:\%[0-9a-f]{2}))+\.)+(?:[-_0-9a-z.~!$&'\(\)*+,;=]|(?:\%[0-9a-f]{2}))+
  )  
 )
  |
 (?:
  (?: https?://|ftp://)
  (?:
   (?:\d{1,3}\.){3}\d{1,3}
  )
 )
 )   
 (?:\:\d+)?  
  (?:
    (?:
      /(?:[-_0-9a-z.~!$&'\(\)*+,;=:@/?#]|(?:\%[0-9a-f]{2}))*
   )
    |
    (?:
      \?(?:[-_0-9a-z.~!$&'\(\)*+,;=:@/?#]|(?:\%[0-9a-f]{2}))+
    )
    |
    (?:
      \#(?:[-_0-9a-z.~!$&'\(\)*+,;=:@/?#]|(?:\%[0-9a-f]{2}))*
    )
  )?

 
pcre_exec stack overflow
 
经过我咨询pcre的开发组,得到了一个答案,即我采用的是prebuild binaray for windows。
而这个版本在对于递归调用的使用上,并没有支持使用heap,因此导致了这个问题。
 
从另外一个角度分析,使用heap作为递归,又导致了效率的降低。
 
因此我目前采用的做法还是修改re。
 
 
阅读(436) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~