免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: gregorian
打印 上一主题 下一主题

perl正则问题 关于`字符 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2009-05-06 13:34 |只看该作者
好吧。 说具体点
其实你把.*到底都匹配了什么打出来看看就明白了。
在匹配了(?!wp_comments)之后 下一个匹配位置并没有像你想象的移动到;上, 实际上匹配的位置根本就没动。下一个将要被匹配的字符是w.

但愿我说清楚了。。。

[ 本帖最后由 DQP 于 2009-5-6 13:36 编辑 ]

论坛徽章:
0
12 [报告]
发表于 2009-05-06 15:33 |只看该作者
请恕我资质太差,自己都没有能写出一个例子来参考
open FD,"test.txt";

while(<FD>){

print if /(?!aaaaa)(.*)/io ;
print "$` $& $' $1 $2 ";
}

这个文件里面只有一行
cccc 1234567890 aaaa zyx bbb
$1 $& 显示的都是这一行 ,好像根本就没有匹配到$2
能给我一个具体的例子看看嘛

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
13 [报告]
发表于 2009-05-06 15:41 |只看该作者
原帖由 gregorian 于 2009-5-6 15:33 发表
请恕我资质太差,自己都没有能写出一个例子来参考
open FD,"test.txt";

while(<FD>){

print if /(?!aaaaa)(.*)/io ;
print "$` $& $' $1 $2 ";
}

这个文件里面只有一行
cccc 1234567890 aaaa zyx bbb
$1 $& 显示的都是这一行 ,

是这一行就对了,你压根就把 (?!pattern) 用错了,而且你的这个错误在 perlre 中讲解 (?!pattern) 的时候有提到,看看吧。
好像根本就没有匹配到$2

在你的 regexp 里面根本就没有 $2,(?!pattern) 是不做 capture 的。

论坛徽章:
0
14 [报告]
发表于 2009-05-07 15:31 |只看该作者
网上找了一些文档,还是没有看明白。
能说的再具体点  或给我个链接让我自己看
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP