中国韩国日本在线观看免费,A级尤物一区,日韩精品一二三区无码,欧美日韩少妇色

當前位置:主頁 > 雜文精選 >

淺析正則表達式

發(fā)布時間:2014-07-24 12:08

  正則表達式目前在很多軟件中得到廣泛應用,包括Linux, Unix等操作系統(tǒng),VBScript, Java, PHP等開發(fā)環(huán)境,以及很多應用軟件都能應用到正則表達式。

  1正則表達式的歷史1956年,一位叫Stephen Kleene的數(shù)學家在McCulloch和Pitts早期工作的基礎上,發(fā)表了一篇標題為"神經(jīng)網(wǎng)事件的表示法"的論文,引入了正則表達式的概念。正則表達式就是用來描述他稱為"正則集的代數(shù)"的表達式,因此采用"正則表達式"這個術語。

  隨后,發(fā)現(xiàn)可以將這一工作應用于使用Ken Thompson的計算搜索算怯的一些早期研究,Ken Thompson是Unix的主要發(fā)明人。正則表達式的第一個實用應用程序就是Unix中的qed編輯器。從那時起直至現(xiàn)在正則表達式都是基于文本的編輯器和搜索工具中的一個重要部分。

  2正則表達式定義正則表達式描述了一種字符串匹配的模式,可以用來檢查一個串是否含有某種子串、將匹配的子串做替換或者從某個串中取出符合某個條件的子串等。

  列目錄肘,dir*. exe中的*.exe就不是一個正則表達式,因為這里*與正則式的*的含義是不同的。則表達式是由普通字符(a-z)以及特殊字符(也叫元字符)組成的文字模式。正則表達式作為一個模板,將某個字符模式與所搜索的字符串進行匹配。

  2.1普通字符囪所有那些未顯式指定為元字符的打印和非打印字符組成。這包括所有的大寫和小寫字母字符,所有數(shù)字,所有標點符號以及一些符號。

  2.2特殊字符

  特殊字符,指有特殊含義的字符,如上面說的"*.exe"中的*,簡單的說就是表示任何字符串的意思。如果要查找文件名中有*的文件,則需要對*進行轉義,即在其前加一個\。Is \*.exe。

  正則表達式里的特殊字符$,(),*,+,.,[,?,\^\|

  $匹配輸入字符串的結尾位置。()標記一個子表達式的開始和結束位置。

  匹配前面的子表達式零次或多次。+匹配前面的子表達式一次或多次。

  .匹自己除換行符\n之外的任何單字符。{標記一個中括號表達式的開始。

  ?匹配前面的子表達式零次或一次。{標記限定符表達式的開始。

  \將下一個字符標記為或特殊字符、或原義字符、或向后引用、或八進制轉義符。

  ^匹配輸入字符串的開始位置,除非在方括號表達式中使用,筆耕文化傳播,此時它表示不接受該字符集合。|指明兩項之間的一個選擇。

  2.3限定符限定符用來指定正則表達式的一個給定組件必須要出現(xiàn)多少次才能滿足匹配。

  有*,+,?, {n}, {n,}, {n, m}共6種。

  *匹配前面的子表達式零次或多次。{n}

  +匹配前面的子表達式一次或多次。?匹配前面的子表達式零次或一次。

  {n} n是一個非負整數(shù)。匹配確定的n次。

  {n,}且是一個非負整數(shù)。至少匹配n次。

  {n,m} m和n均為非負整數(shù),且n<=m。最少匹配n次且最多匹配m次。

  2.4定位符用來描述字符串或單詞的邊界, ^和$分別指字符串的開始與結束,\b描述單詞的前或后邊界,\B表示非單詞邊界。不能對定位符使用限定符。

  本文由整理發(fā)布,轉載請注明出處!



本文編號:5634

資料下載
論文發(fā)表

本文鏈接:http://www.lk138.cn/qitalunwen/5634.html


Copyright(c)文論論文網(wǎng)All Rights Reserved | 網(wǎng)站地圖 |

版權申明:資料由用戶9e492***提供,本站僅收錄摘要或目錄,作者需要刪除請E-mail郵箱bigeng88@qq.com