zoukankan      html  css  js  c++  java
  • 《精通正则表达式》笔记

    偷懒~~

    工具:RegexBuddy

    Regex来历:regular expression的简写

    [-./]:这个东西以前经常看到,因为从来没学过正则,所以一直误解里头的‘-’。其实这个字符在[]中第一个出现的时候代表的是普通字符,没有别的意思,最后的’/’也是。

    |和()的渊源:’|’是个很有意思的东西,它跟分组符号配合就像变魔法一样,可以很容易写出精简的正则。后者据说就是为了限制前者的。

    ?+*{min,max}:看看就知道啥意思,如果你学过计算机。

    ^:曾经摸索写的时候我就想,咋没取反的符号类,我恨你~

    flavor:流派,跟正则无关,学习下英文。

    budding regexers:巧妙的正则。

    $1,2,3…:存储的规则是看分组的第一个括号出现的顺序,如果不想存储可以使用(?:)。

    (?=)和(?<=):环视(lookahead),就是循环出现,前者是右边出现,后者是左边出现,且环视是不会占据字符的因为它只代表位置。

    (?!)和(?<!):跟上面取反的。

    插句话,这个书的作者脑子有k,perl来perl去,我可不关心它好不好。

    正则起源:居然起源于两个神经学家,大自然真神奇~

    字符串中的\\:\w\t等在字符串中要小心,\\代表\

    unicode:C#支持,haha

    简单字符组减法:[[a-z]-[aeiou]]

    组的声明:默认按照左括号(出现的次序,也可以命名<name>例:(?<name>)(?'name’)

    \w、\d、\s:处理所有合适的Unicode字符,可以通过启用RegexOptions.ECMAScript来限制在ascii

    RegexOptions.ExplicitCapture:取消分组

    反向取组:\k<name>或\k’name’

    relpacement字符串中:用${name}

    (?<DEPTH>)\(?<-DEPTH>):表示深度的,如果前面啥出现就XXXX。前者是+1后者是-1。

    (?(DEPTH)):判断是否符合深度

    作者:KKcat
        
    个人博客:http://jinzhao.me/
        
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    Samba.conf案例 Ubuntu
    samba服務器下文件夾chmod權限技巧
    华为AR1220
    vsftpd.conf案例
    FTP指令说明
    Ubuntu 16.04 LTS 搭建LAMP
    记录踩过的坑——代理IP
    重写验证时重定向
    顶级页面
    文件中用WriteLine追加内容的两种方法
  • 原文地址:https://www.cnblogs.com/jinzhao/p/1572880.html
Copyright © 2011-2022 走看看