请问perl正则表达式中的(?!....)(?=....)是什么意思

nanmu80 2009-07-10 04:22:06
加精
在programming perl中看到的,但是不懂什么意思。请各位高手帮忙解惑。最好能具个例子说明。谢谢
...全文
2968 38 打赏 收藏 转发到动态 举报
写回复
用AI写文章
38 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2009-11-11
  • 打赏
  • 举报
回复
建议稍后到我的资源里面下载“正则表达式速查、举例、学习”
http://download.csdn.net/zhao4zhong1
mwm1983 2009-11-07
  • 打赏
  • 举报
回复
谢谢。。学习了。。
lhc1943 2009-10-10
  • 打赏
  • 举报
回复
hoho4533 2009-10-09
  • 打赏
  • 举报
回复
学习一下
XyRbj 2009-10-09
  • 打赏
  • 举报
回复
学习
hongyemantian 2009-10-09
  • 打赏
  • 举报
回复
呵呵 谢谢 学习
lk0126 2009-10-09
  • 打赏
  • 举报
回复
路过
十八道胡同 2009-10-09
  • 打赏
  • 举报
回复
学正则 看过客的blog,,
我不是打广告的。。。
grzx2210 2009-10-09
  • 打赏
  • 举报
回复
ding
agel0ver 2009-10-08
  • 打赏
  • 举报
回复
学习
juhuacha159 2009-10-08
  • 打赏
  • 举报
回复
学习了
aweiname2008 2009-10-07
  • 打赏
  • 举报
回复
学习一下
zguolongzu 2009-10-07
  • 打赏
  • 举报
回复
明白了
sdgsfg 2009-10-07
  • 打赏
  • 举报
回复
学习学习
uceve 2009-10-06
  • 打赏
  • 举报
回复
1.它匹配的是一个精确的位置
比如要匹配autumn里的tu 用普通的方法就不行 必须要用到环视(? <=au)tu(?=mn)
2.在global match的时候 下一次的匹配时从上一次环视找到的位置开始的
比如autumn的例子 下一次是从mn开始的 而不是从n后面开始的
夏同良 2009-10-06
  • 打赏
  • 举报
回复
谢谢大家了
zhouyongfu00 2009-10-06
  • 打赏
  • 举报
回复
零宽度负预测先行断言(?!exp),断言此位置的后面不能匹配表达式exp。例如:\d{3}(?!\d)匹配三位数字,而且这三位数字的后面不能是数字;\b((?!abc)\w)+\b匹配不包含连续字符串abc的单词。

(?=exp)也叫零宽度正预测先行断言,它断言自身出现的位置的后面能匹配表达式exp。比如\b\w+(?=ing\b),匹配以ing结尾的单词的前面部分(除了ing以外的部分),如查找I'm singing while you're dancing.时,它会匹配sing和danc。
coolbamboo2008 2009-10-06
  • 打赏
  • 举报
回复
学习
Cyanapple_wen 2009-10-06
  • 打赏
  • 举报
回复
学习了。
lhdgriver 2009-10-04
  • 打赏
  • 举报
回复
四楼正解 环视的作用
1.它匹配的是一个精确的位置
比如要匹配autumn里的tu 用普通的方法就不行 必须要用到环视(?<=au)tu(?=mn)
2.在global match的时候 下一次的匹配时从上一次环视找到的位置开始的
比如autumn的例子 下一次是从mn开始的 而不是从n后面开始的
加载更多回复(13)

37,719

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧