久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      淺談?wù)齽t速記法的技巧

      給你一篇文章,如何挑選出你想要的字符串呢?你可以從左到右從上到下,一個一個字符讀取出來,寫一大堆if做判斷。這樣太麻煩了,正則就是將以上過程抽象出來,用一些特定符號就能表示出大部分規(guī)則

      對大部分人來說,正則主要是難記,其實只要對正則符號分類記憶,就會發(fā)現(xiàn)核心概念其實特別簡單

      注:本文會假設(shè)你至少看過一遍正則的文檔,如果沒看過,可以看mdn(有中文翻譯),如果覺得mdn排版亂,推薦去https://devdocs.io/javascript/global_objects/regexp學(xué)習(xí)。本文所使用語言為javascript

      元字符

      /a/中的a就是一個元字符,一個元字符匹配一個實體字符,這里的“a”沒有特殊含義,就匹配一個英文a

      /d/就匹配0到9的所有數(shù)字,如果兩個連寫/dd/就可以匹配10到99的所有數(shù)字

      /./可以匹配任何字符

      集合

      假如有一串字符串'0123456789',我只想匹配其中的’3′,’6′,’9’,這時可以放在集合中/[369]/

      執(zhí)行后會發(fā)現(xiàn)只有3被匹配到,是因為集合中不管寫多少東西都代表一個元字符,集合也是一種元字符
      你可能見過這樣都集合/[0-9a-zA-Z_]/它代表匹配所有數(shù)字,字母和下劃線,它與元字符/w/的效果是一樣的,集合更靈活w更方便

      排除型集合

      /[^0-9]/除了數(shù)字都匹配(我喜歡叫它否定集合)

      或(多選)

      假設(shè)我有一大堆書單,我希望從中匹配出naroto和one piece,那么可以這樣寫/naroto|one pice/ 豎線代表或,a或b,你也可以寫多個a|b|c|d,你當(dāng)然可以寫出0|1|2…|9來匹配所有數(shù)字。但要注意和集合的區(qū)別,集合是一個元字符,不能匹配單詞,|兩邊可以是多個元字符

      分組

      我現(xiàn)在有一堆文件,我希望匹配出后綴是.css和.less的文件,你可以很自然的寫出/.css|.less/這樣的代碼。其實還有一個簡便寫法/.(c|le)ss/,分組可以將若干個元字符放在同一個作用域中做處理,通過分組我們可以寫出更簡練的代碼

      分組還有一個特殊的用法,思考如何匹配'asd_asd_asd_asd_asd'這種字符串?

      答案是/(asd)(_1)+/,1是個非常特殊的元字符,代表重復(fù)使用第一個分組的匹配結(jié)果,2就代表第二個,以此類推,+加號表示重復(fù)一到多次(這個后面會講),需要注意的是計數(shù)從1開始,