3月292016
au3 正则参考 -30-限定符
<!DOCTYPE html>
正则表达式中的限定符
限定符指定匹配输入文本中的字符, 或组的多少个实例才能找到匹配项.下表列出可用的限定符, 点击蓝色字体查看详细描述:
贪婪 | 惰性 | 占有 (AutoIt 文档描述的) | 说明 |
---|---|---|---|
? | + | 匹配零次或多次. | |
+ | +? | ++ | 匹配一次或多次. |
? | ?? | ?+ | 匹配零次或一次. |
{x} | {x}? | {x}+ | 准确匹配 x 次. |
{x,} | {x,)? | {x,}+ | 至少匹配 x 次. |
{x,y) | {x,y}? | {x,y}+ | 至少匹配 x 但不超过 y 次. |
量词 x 和 y 为正整数值. 通常限定符是贪婪的, 它们使正则表达式引擎将尽可能多地匹配特定模式的匹配项. 通俗点讲, 就是看到想要的, 有多少就捡多少, 除非再也没有想要的了.
量词后追加 ? 字符限定符使其成为惰性的, 它使正则表达式引擎可以尽可能少的返回匹配项. 通俗点讲, 就是找到一个想要的捡起来就行了, 至于还有没有没捡的就不管了.
有关贪婪限定符与惰性限定符之间差别的完整描述, 请参见 贪婪与惰性限定符.
嵌套限定符(例如正则表达式模式 (a) 的操作)可以增加正则表达式引擎必须执行的比较次数.
关于此行为和其解决方法的更多信息, 请参见正则表达式的回溯.
如果在正则表达式模式中遇到 , +, ?, { 和 } 字符, 正则表达式引擎将它们解释为限定符或限定符构造的一部分, 除非它们包括在字符组中.
若要在正则表达式中将其解释为量词限定符的本身文本字符, 必须通过在前面加一个反斜杠进行转义. 例如正则表达式模式中的字符串 * 被解释为原义星号 “*” 字符.
扫描二维码,在手机上阅读
发表评论
木有头像就木JJ啦!还木有头像吗?点这里申请属于你的个性Gravatar头像吧!