如何使用PHP中的正則表達式

如何使用PHP中的正則表達式

關鍵詞:PHP

在PHP中正則表達式用於復雜字符串的處理。所支持的正則表達式如下:

ereg()
ereg_replace()
eregi()
eregi_replace()
split()

(1)ereg,eregi
這是正規表達式匹配函數,前者是大小寫有關匹配,後者則是無關的.
用法:
ereg(正規表達式,字符串,[匹配部分數組名]);
PHP3.0中的正規表達式大體類似於grep中用的.
(2)ereg_replace,eregi_replace
這些是替換函數.
用法:
ereg_replace(正規表達式,替換串,原字符串);
字符串處理函數中有一個strtr,是”翻譯”函數,類似於Perl中的tr/…/…/,
用法:
strtr(字符串,”從”,”到”);
例如:
strtr(“aaabb”,”ab”,”cd”)返回”cccdd”.
(3)split
與explode函數有些類似,但這次可以在匹配某正規表達式的地方分割字符串.
用法:
split(正規表達式,字符串,[取出前多少項]);

這些函數都使用正則字符串做為第一個參數。PHP使用Posix 1003.2標準所定義的擴展正則字符串。
要查考Posix正則表達式的完整描述請看PHP軟件包中regex目錄下的man頁。

Regular expression examples:

ereg(“abc”,$string);
/* Returns true if “abc” is found anywhere in $string. */

ereg(“^abc”,$string);
/* Returns true if “abc” is found at the beginning of $string. */

ereg(“abc$”,$string);
/* Returns true if “abc” is found at the end of $string. */

eregi(“(ozilla.[23]|MSIE.3)”,$HTTP_USER_AGENT);
/* Returns true if client browser is Netscape 2, 3 or MSIE 3. */

ereg(“([[:alnum:]]+) ([[:alnum:]]+) ([[:alnum:]]+)”,$string,$regs);
/* Places three space separated words into $regs[1], $regs[2] and $regs[3]. */

ereg_replace(“^”,””,$string);
/* Put a tag at the beginning of $string. */

ereg_replace(“$”,””,$string);
/* Put a tag at the end of $string. */

ereg_replace(”
“,””,$string);
/* Get rid of any carriage return characters in $string. */

You May Also Like