绿色风's Blog
专注AutoIT(Au3)
  • 首页
  • 流●年
  • 笔●记
    • 学习随记
    • 源码示例
  • 脚●本
    • UDF(收集)
    • 工作室UDF
    • 工具●教程
    • 教程之GDI
  • 作●品
  • 下●载
  • 情怀ExcelTip
3月242016

au3 正则参考 -05-负字符组

作者:绿色风   发布:2016-3-24 12:51 Thursday   分类:   阅读:3500次   评论:0条  

<!DOCTYPE html>

RegExp

[^... ] 负字符组 (排除型字符组)

负字符组指定一个字符列表, 匹配过程排除列表包含的字符. 此字符列表可以单独指定和/或作为范围指定. 可以包括一个或多个文本字符, 转义字符或字符类的任意组合.

可以连接两个或更多字符范围. 例如, 若要排除从 0 至 9 的十进制数范围, 和从 a 至 f 的小写字母范围, 以及从 A 至 F 的大写字母范围, 则可使用 [^0-9a-fA-F] .

[^abc] 表示匹配时必须排除字符 a , b , c . 负字符组中的前导符 ^ 是强制的, 指示字符组为负字符组, 而不是正字符组.

 

下表列出了一些常见负字符组的正则表达式模式:

模式 匹配内容
[^\x00-\xff]

排除 0 到 255 的所有 ANSI 字符. 即匹配任意一个汉字. [^\x00-\xff]+ 匹配连续的汉字.

[^\p{P}\d] 匹配标点符号和十进制数字字符以外的所有字符.
[^aeiou] 匹配除元音以外的所有字符.

 

下面示例匹配以字符 th 开头且后面不跟 o 的任何单词:

字符串: thought thing though them through thus thorough this

表达式: \bth[^o]\w+\b

匹配结果(标志 3):
[0]thing
[1]them
[2]through
[3]thus
[4]this

正则表达式分析:

模式 说明
\b 匹配单词的开始位置.
th 匹配文本字符 th .
[^o] 负字符组. 匹配任何不是字母 o 的字符.
\w+ 匹配一个或多个单词字符.
\b 匹配单词的结束位置.

 

新手最容易犯的错误就是, 用 [^abc] 或 [^(abc)] 这样的表达式来匹配不包含 "abc" 子字符串的字符串.

例如:

源字符串: "<aaa>bbb<abc>ccc<ddd>"

规则描述: 取出源字符串中格式为<...>, 但<>中不是 abc 的内容.

预期结果: <aaa>、<ddd> (测试标志 3)

错误写法: <[^abc]*> (测试标志 1, 2, 3, 4 都只能匹配 <ddd>)

正确写法: "<(?!abc>)[^>]*>"

表达式分析:

模式 说明
< 开始匹配一个左尖括号 <
(?!abc>)

负预测先行断言, ?! 为负向预取, 表示从这个位置开始不匹配字符串 abc> .
即跳过左尖括号 < 后面跟随的 abc> 字符串.

[^>]* 负字符组. 匹配 0 或多个不是 > 的其它字符.
即匹配左尖括号 < 后面不是字符串 abc> , 只到下面子模式指定模式前的所有字符.
> 跟着匹配一个右尖括号 > 完成一次匹配过程.





本文固定链接: http://www.jianyiit.com/post-172.html

blogger
该日志由 绿色风 于2016-3-24 12:51 Thursday发表在 分类下。
版权所有:《绿色风's Blog》 → 《au3 正则参考 -05-负字符组》;
除特别标注,本博客很多文章均为原创. 互联分享,尊重版权,转载请以链接形式标明本文地址;
本文标签:

扫描二维码,在手机上阅读
上一篇::au3 正则参考 -06-任意字符
下一篇:au3 正则参考 -04-正字符组

热门文章

相关文章

  • au3 正则参考 -40-表达式选项
  • Au3-API教程
  • au3 正则参考 -07-U码类-块列表
  • au3 正则参考 -33-问号限定符
  • au3 正则参考 -16-字符串或行的开头
取消回复

发表评论

亲,头像对么?

36 + 20 =

提交中,请稍候……


木有头像就木JJ啦!还木有头像吗?点这里申请属于你的个性Gravatar头像吧!


    站点统计
    • 运行时间: 20254 天
    • 日志总数: 365 篇
    • 评论数量: 7252 条
    • 微语数量: 6 条
    • 附件总量: 388 件
  • 逝出的青春

  • 打赏"绿色风"



      扫码关注本站公众号 可搜本站内容

  • Autoit V3 脚本交流群

      常驻群1:905774875
      常驻群2:40672266


  • 链接

    • AU3中文论坛
    • Excel资料库
    • 完美者博客
    • 顺网小哥'S Blog
    • 猛牛哥的博客
    • 网吧系统下载
  • 分类

    • 流●年(66)
    • 笔●记(0)
    • 脚●本(0)
    • 作品(21)
    • 学习随记(51)
    • 源码示例(68)
    • UDF(收集)(26)
    • 工作室UDF(30)
    • 工具●教程(62)
    • 教程之GDI(24)
Copyright © 2013 绿色风's Blog. Powered by emlog. Theme by 射雕天龙. 鄂ICP备2021011689号-1 鄂公网安备42102302000078号 sitemap