设为首页 加入收藏 网站首页
休闲娱乐
军事·社会百态·娱乐八卦·校园
体育·美女写真·幽默笑话·游戏
综合·在线视频·搞笑图片·灵异
两性生活
两性知识·性爱技巧
情色实录·两性图片
女性健康·同性之恋
电脑网络
网络编程·网页制作·软件教学
操作系统·图形图象·冲浪宝典
网络安全·邮件系统·认证考试
热点专题
芙蓉·真人漫画
72式·欲望都市
帅哥·人体彩绘
您现在的位置: 世纪中国 >> 网络编程 >> ASP.NET教学 >> asp.net教程 >> 教程正文
30分钟正则表达式指导
作者:中国图霸    教程来源:网络    点击数:    更新时间:2006-12-30
+(?=ing\b) -- The beginning of words ending with "ing"

“(?<=exp)”是“零宽度确定后向断言”。它匹配在给定前缀后面的位置,但不在匹配中包含这个前缀:

23. (?<=\bre)\w+\b -- The end of words starting with "re"

下面这个例子可以用来重复向三位数为一组的数字中插入逗号的例子:

24. (?<=\d)\d{3}\b -- Three digits at the end of a word, preceded by a digit

下面是一个同时搜索前缀和后缀的例子:

25. (?<=\s)\w+(?=\s) -- Alphanumeric strings bounded by whitespace

否定察看(Negative Lookaround)

之前,我说明了怎样搜索一个不是特定字符或一个字符集合的成员的字符。那么如果我们想要简单的验证一个字符没有出现,但是不想匹配任何东西怎么办?例如,如果我们想要搜索其中“q”不是后跟着“u”的单词怎么办?我们可以尝试:

26. \b\w*q[^u]\w*\b -- Words with "q" followed by NOT "u"

运行例子你就会看到如果“q”是一个单词的最后一个字母就不会匹配,比如“Iraq”。这是因为“[^q]”总是匹配一个字符。如果“q”是单词的最后一个字符,它会匹配后面跟着的空白字符,所以这个例子中表达式结束时匹配两个完整的单词。否定察看可以解决这个问题,因为它匹配一个位置而不消耗任何文本。与确定察看一样,它也可以用来匹配一个任意复杂的子表达式的位置,而不仅仅是一个字符。我们现在可以做得更好:

27. \b\w*q(?!u)\w*\b -- Search for words with "q" not followed by "u"

我们使用“零宽度否定前向断言”,“(?!exp)”,只有当后缀“exp”没有出现时它才成功。下面是另一个例子:

28. \d{3}(?!\d) -- Three digits not followed by another digit

相似地,我们可以使用“(?<!exp)”,“零宽度否定后向断言”,来搜索文本中的一个位置,这里前缀“exp”没有出现:

29. (?<![a-z ])\w{7} -- Strings of 7 alphanumerics not preceded by a letter or space

这里是另一个使用后向的例子:

30. (?<=<(\w+)>).*(?=<\/\1>) -- Text between HTML tags

这个使用后向搜索一个HTML标记,而使用前向搜索对应的结束标记,这样,就能获得中间的文本而不包括两个标记。

评论

标点的另一个用法是使用“(?#comment)”语法包含评论。一个更好的办法是设置“Ignore Pattern Whitespace”选项,它允许空白字符插入表达式然后当使用表达式时忽略它。设置了这个选项之后,任何文本每行末尾在数字符号“#”后面的东西都被忽略。例如,我们可以格式化先前的例子如下:

31. Text between HTML tags, with comments

(?<=    # Search for a prefix, but exclude it
  <(\w+)> # Match a tag of alphanumerics within angle brackets
)&

上一页  [1] [2] [3] [4] [5] [6] [7] [8] 下一页

分类推荐
社会 社会 娱乐 军事 校园
幽默 体育 女性 专题
电脑 编程 网页 软件 系统
安全 图象 冲浪 认证
搞笑 人物 动物 物品 表情
签名 色图 漫画 奇闻
美女 明星 清纯 自拍 欧美
丝袜 卡通 性感 走光
两性 知识 性图 孕育 技巧
同性 单身 情感 实录
视频 写真 搞笑 MTV 翻唱
写实 片段 游戏 综艺
asp.net教程热门文章
普通教程 ASP.NET讲座(2)-ASP.NET控件
普通教程 在Win 2003中配置ASP.net环境
普通教程 ASP.NET中Cookie编程的基础知识
普通教程 Asp.Net函数集
普通教程 .NET泛型基础
普通教程 ASP.NET中Cookie编程的基础知识
普通教程 最佳ASP.NET编程习惯
普通教程 十天学会ASP.net之第一天
普通教程 学习掌握.NET的第一步
普通教程 手把手教你建立ASP.NET开发平台
普通教程 ASP.NET中Cookie编程的基础知识
普通教程 ASP.NET讲座(1)-ASP.NET简介
普通教程 优秀ASP.NET程序员修炼之路
普通教程 Autodesk官方最新的.NET教程(
普通教程 ASP.NET技术FAQ
普通教程 ASP.NET中Cookie编程的基础知识
普通教程 ASP.NET中Cookie编程的基础知识
普通教程 Autodesk官方最新的.NET教程(
普通教程 Autodesk官方最新的.NET教程(
普通教程 Autodesk官方最新的.NET教程(

  广东广州海珠区 世纪网络工作室 版权所有 上海电信提供网络带宽
信箱: 9297659@qq.com 粤ICP备06113754号