關于正則表達式,因為太復 " /> 久久99成人,av亚洲一区二区三区,在线国产成人影院

色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

PHP學習之正則表達式

現在我們大家所說的正則表達式基本上是指兼容Perl風格的正則表達式。POSIX風格的正則表達式基本上沒人使用了,所以從php5.3起,已經不推薦使用了,可能到php的下一個版本就會把相關的函數刪除。

關于正則表達式,因為太復雜,所以以后想專看一本正則的書,所以只介紹兼容Perl風格的正則表達式的一些函數。

1. 定界符
定界符表示正則表達式的開始和結尾,一般用斜線(/)表示。在php中(其它語言暫時沒有測試過),它也可以用其它的非數字字母的字符來代替。如//d+/和#/d+#的表示同一個正則表達式/d+。同時,也可以用小括號對,中括號對,大括號對做為定界符,如[/d+]。

2. 函數
匹配函數:preg_match(); 以及preg_match_all();
替換函數:preg_replace();
拆分函數:preg_split();
過濾函數:preg_grep();

示例代碼:
復制代碼 代碼如下:
$a = <<< TEXT
aaaaaaa 15
bbbbbbb 16
TEXT;
$ret = preg_match(/(/w+) (/d+)/, $a, $match);
// $ret : 1
// $match : array(aaaaaaa 15′, aaaaaaa, 15′)

$ret = preg_match_all(/(/w+) (/d+)/, $a, $match);
// $ret : 2
// $match : array(
// array(aaaaaaa 15′, bbbbbbb 16′),
// array(bbbbbbb, bbbbbbb),
// array(15′, 16′),
// )

$ret = preg_match_all(/(/w+) (/d+)/, $a, $match, PREG_SET_ORDER);
// $ret : 2
// $match : array(
// array(aaaaaaa 15′, bbbbbbb, 15′),
// array(bbbbbbb 16′, bbbbbbb, 16′),
// )

$b = preg_replace(/(/w+) (/d+)/, /1, /2′, $a);
// $b : aaaaaaa, 15
// bbbbbbb, 16′

$c = preg_split(//s/, $a);
// $c : array(aaaaaaa, 15′, bbbbbbb, 16′)

$files = array(aa.txt, bb.xls, cc.txt);
$txtFiles = preg_grep(/.*/.txt/, $files);
// $txtFiles : array(aa.txt, cc.txt)

參考資料:
php程序設計,2003,第四章 字符串,正則表達式

php技術PHP學習之正則表達式,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 忻城县| 齐齐哈尔市| 肥城市| 通海县| 长兴县| 抚州市| 江油市| 辽宁省| 灵台县| 阿坝县| 北流市| 兴业县| 巴林左旗| 若尔盖县| 秭归县| 敖汉旗| 阜康市| 临泽县| 阿拉善左旗| 建宁县| 油尖旺区| 吉首市| 北流市| 吴忠市| 环江| 清水河县| 柳河县| 会昌县| 涪陵区| 临颍县| 崇明县| 察雅县| 池州市| 呈贡县| 嘉荫县| 永兴县| 阿勒泰市| 长岛县| 三穗县| 黎川县| 福清市|