9.1.1 選擇PHP正則表達(dá)式的處理函數(shù)庫

9.1.1 選擇PHP正則表達(dá)式的處理函數(shù)庫

正則表達(dá)式簡(jiǎn)介:
正則表達(dá)式是用于描述字符排列和匹配模式的一種語法規(guī)則。它主要用于字符串的模式分割、匹配、查找及替換操作。到目前為止,我們前面所用過的精確(文本)匹配也是一種正則表達(dá)式。
在PHP中,正則表達(dá)式一般是由正規(guī)字符和一些特殊字符(類似于通配符)聯(lián)合構(gòu)成的一個(gè)文本模式的程序性描述。
PHP中,正則表達(dá)式有三個(gè)作用:
匹配,也常常用于從字符串中析取信息。
用新文本代替匹配文本。
將一個(gè)字符串拆分為一組更小的信息塊。
一個(gè)正則表達(dá)式中至少包含一個(gè)原子。

在PHP中有兩套正則表達(dá)式函數(shù)庫,兩者功能相似,只是執(zhí)行效率略有差異:
一套是由PCRE(Perl Compatible Regular Expression)庫提供的。使用“preg_”為前綴命名的函數(shù);
一套由POSIX(Portable Operating System Interface of Unix )擴(kuò)展提供的。使用以“ereg_”為前綴命名的函數(shù);
PCRE來源于Perl語言,而Perl是對(duì)字符串操作功能最強(qiáng)大的語言之一,PHP的最初版本就是由Perl開發(fā)的產(chǎn)品。
PCRE語法支持更多特性,比POSIX語法更強(qiáng)大。
舉例:想一想這兩個(gè)正則表達(dá)式做什么用?
/-?\d+$|-?0[xX][\da-fA-F]+$/
/^[0-9a-zA-Z_-]+@[0-9a-zA-Z_-]+(.[0-9a-zA-Z_-]+){0,3}$/

test.php

<?php
$text = <<<st

歷法擴(kuò)展集包括了一系列用于在不同歷法間進(jìn)行轉(zhuǎn)換的函數(shù),它是以Julian Day計(jì)數(shù)為中介或標(biāo)準(zhǔn)來進(jìn)行的。Julian Day計(jì)數(shù)是以公元前的4713年的1月1日為起點(diǎn)的一http://www.lampbrother.net種計(jì)數(shù)法。為了在不同歷法間進(jìn)行轉(zhuǎn)換,你首先要轉(zhuǎn)換成Julian Day計(jì)數(shù),然后再轉(zhuǎn)換為你所需要的歷法。Julian Day計(jì)數(shù)和Julian歷法http://www.baidu.com是非常不同的!Julian Day計(jì)數(shù)的更多信息可以參考? http://www.google.com,歷法系統(tǒng)的更多信息可以參考? http://www.brophp.org本頁中的引用包括在相應(yīng)的文章中。 

st;

//url  
$str = "/http\:\/\/www(.*?)(org|com|net)/i"; 
/*
 * 1.  正則表達(dá)式,就是一個(gè)匹配的"模式"
 * 2.  正則表達(dá)式本身, 就是一個(gè)字符串(中有一些語法規(guī)則, 特殊字符)
 *
 *
 *  正則表達(dá)式這個(gè)字符串, 一定要在對(duì)應(yīng)的函數(shù)中使用, (分割的函數(shù),替換的函數(shù) )
 */
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容