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

當(dāng)前位置:主頁 > 雜文精選 >

淺析正則表達(dá)式

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

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

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

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

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

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

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

  2.2特殊字符

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

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

  $匹配輸入字符串的結(jié)尾位置。()標(biāo)記一個(gè)子表達(dá)式的開始和結(jié)束位置。

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

  .匹自己除換行符\n之外的任何單字符。{標(biāo)記一個(gè)中括號(hào)表達(dá)式的開始。

  ?匹配前面的子表達(dá)式零次或一次。{標(biāo)記限定符表達(dá)式的開始。

  \將下一個(gè)字符標(biāo)記為或特殊字符、或原義字符、或向后引用、或八進(jìn)制轉(zhuǎn)義符。

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

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

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

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

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

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

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

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

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

  本文由整理發(fā)布,轉(zhuǎn)載請(qǐng)注明出處!



本文編號(hào):5634

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

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


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

版權(quán)申明:資料由用戶9e492***提供,本站僅收錄摘要或目錄,作者需要?jiǎng)h除請(qǐng)E-mail郵箱bigeng88@qq.com