什么是正則表達式正則表達式就是用某種模式去匹配一類字符串的一種公式,通谷的講,就是用一個“字符串”描述一個特征,然后驗證另一個“字符串”是否符合這個特征的公式。
比如“ab+”描述的特征是:一個a和任意個b。那么ab,abb,abbbbbb都是符合這個特征,而字符串ad顯然是不符合的
正則表達式可應用到各個方面,在常用的高級編輯器中,幾科都支持正則表達式,如word,vim等
正則表達式在編程語言中更是得到了大規(guī)模推廣?,F在的語言幾科都是原生的,都可以從語法上支持正則表達式,尤其在perl的扒動下,php,java.net,javascript等語言都支持有正則語法。
PHP中的正則函數正則表達式看起來總是那么古怪,以至于許多人對其望而生畏。首先要澄清一些概念:雖然不同語言間正則語法大同小異,但實際上正則表達式的實現有多種引擎(如非確定性有窮自動機NFA,確定性有窮自動機DFA),其表現又有多種風格(如javascript有自己的樸素正則,Perl有一套高級而強大的正則,。Net也有自己的一套正則風格)。另外,還有人可能容易混淆PHP中的preg和ereg
簡單的說,PHP中有兩套則函數,兩者功能著不多:
由PCRE庫提供的函數,以“Preg_”為前綴命名 PCRE(PERL Compatible Regular Expression)由Philip Hazel于1997年開發(fā),現代的編程語言和軟件中一般都使用PCRE庫
由poSIX擴展提供的函數,以“ereg_”為前綴命名。POSIX由一系列規(guī)范構成,定義了UNIX操作系統(tǒng)應用支持的功能,所以”POSIX”風格的正則表達式也就是“關于正則表達式的POSIX規(guī)范”,定義了BRE和ERE兩大流派,通常UNIX的一些工具和較老的軟件中會使用POSSIX風格的正則,另外一些數據庫中也提供了POSIX風格的正則表達式
自PHP5。2以后,就不再推薦使用POSIX正則函數庫,若程序中使用了則會報Deprecated級別的錯誤,這種情況通常在一些較老的代碼中比較常見。其實使用或不使用posix正則函炒出香味庫二者本質上沒有多大差別,主要是一些表現形式,語法和擴展功能的差別
分享名稱:PHP與正則表達式
文章位置:http://muchs.cn/news28/184428.html
成都網站建設公司_創(chuàng)新互聯,為您提供App設計、做網站、外貿建站、移動網站建設、動態(tài)網站、標簽優(yōu)化
廣告
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源:
創(chuàng)新互聯