php的正則表達式函數
『壹』 如何用 php 的字元串處理函數和正則表達式函數來解析一段 xml 這是什麼意思
xml 是具有特定語法和文本規范的一種文件格式,但究其實質來說還是字元串文本,因此,你完全可以用 Php 的字元串處理函數,以及正則表達式函數來完成對 xml 文件的解析。
通常來說,對於 xml 文檔,PHP 內置提供了多種專門用於處理這種文件的擴展,比如:SimpleXML等。
『貳』 PHP 正則表達式函數庫
在PHP中有兩套正則表達式函數庫,兩者功能相似,只是執行效率略有差異:
一套是由PCRE(Perl Compatible Regular Expression)庫提供的。使用「preg_」為前綴命名的函數;
一套由POSIX(Portable Operating System Interface of Unix )擴展提供的(PHP默認)。使用以「ereg_」為前綴命名的函數;
PHP中,正則表達式有三個作用:
匹配,也常常用於從字元串中析取信息。
用新文本代替匹配文本。
將一個字元串拆分為一組更小的信息塊。
一個正則表達式中至少包含一個原子。
原子(普通字元,如英文字元)
元字元(有特殊功用的字元)
模式修正字元(對正則表達式語義的修正)
原子(Atom)
單個字元、數字,如a~z,A~Z,0~9。
模式單元,如(ABC)可以理解為由多個原子組成的大的原子。
原子表,如 。
重新使用的模式單元,如:\\1
普通轉義字元,如:\d, \D, \w
轉義元字元,如:\*,\.
POSIX正則表達式
POSIX正則表達式全稱為Portable Operating System Interface of Unix,意為UNIX可移植操作系實現介面。
http://www.33dir.com/news/2/2168.html
構造POSIX正則表達式的方法和創建數學表達式的方法一樣,也就是用多種元字元與操作符將小的表達式結合在一起來創建更大的表達式。
『叄』 求一個PHP的正則表達式
用str_replace函數就可以了
『肆』 關於php的正則函數 preg_match( 正則表達式 , 待匹配字元串 , 結果接收變數) 正則表達式的輸入問題
單單拿出上面數據里的一條用正則很難。分四段簡單,匹配子文本就可以。
『伍』 php 求正則表達式
$str = 'dfsdfsdf 54/r/n';
$array = preg_split('~\d{1,2}~',$str);
$array[0]是你想要的結果
『陸』 正則表達式函數PHP總結
eregi 好像PHP5都不支持了?
preg_match_all 匹配多個
preg_match 只能匹配出一個
『柒』 php正則表達式
判斷email郵件格式的正則表達式:
[A-Z0-9._%+-]+@[A-Z0-9.-]+.[A-Z]{2,6}
判斷數字:
[d]+
『捌』 求php 正則表達式
php也是採用兼容perl的正則表達式,都是相通的
echo preg_replace("(\<span class=\"H\"\>)", "_", '123<span class="H">456');
輸出 123_456
這裡面是有個定界符的問題,若把兩邊的括弧去掉的話就會報錯,因為PHP 4.0.4 起 <> 可以用來匹配定界符
以下摘自php參考手冊:
Perl 兼容正則表達式函數
簡介
本類函數中所使用的模式極其類似 Perl。表達式應被包含在定界符中,如斜線(/)。任何不是字母、數字或反斜線(\)的字元都可以作為定界符。如果作為定界符的字元必須被用在表達式本身中,則需要用反斜線轉義。自 PHP 4.0.4 起,也可以使用 Perl 風格的 (),{},[] 和 <> 匹配定界符。
『玖』 PHP 正則表達式
([^\\.]+)\\..+
[^\\.]表示不是反斜杠\和點.的字元,([^\\.]+)中的加號表示匹配上述字元1次以上,外面的括弧表示捕獲分組,在替換中用$1表示
\\..+ \\表示反斜杠,.表示任意字元,..+表示至少2個任意字元
這個返回windows目錄結構中的第一級目錄
比如abcd\def\gh,這個正則可以匹配,前面的([^\\.]+)匹配abcd,保存在$1分組;後面\\.+匹配\def\gh
然後替換為$1,abcd\def\gh就被替換為abcd
『拾』 php的正則表達式
\w的指代任何一個字的字元,「字」的字元是指任何一個字母或數字或下劃線
漢字不屬於其中。
用 .就行了