在PHP中有兩套正則表達式函數庫,兩者功能相似,只是執行效率略有差異: 一套是由PCRE(Perl Compatible Regular Expression)庫提供的。使用“preg_”為前綴命名的函數; 一套由POSIX(Portable Operating System In " /> 嫩小幼处在线,一个人在线观看免费中文www,国产偷啪自怕网

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

PHP學習正則表達式 課件第1/2頁

正則表達式

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)可以理解為由多個原子組成的大的原子。
原子表,如 [ABC]。
重新使用的模式單元,如://1
普通轉義字符,如:/d, /D, /w
轉義元字符,如:/*,/.

      POSIX正則表達式
POSIX正則表達式全稱為Portable Operating System Interface of Unix,意為UNIX可移植操作系實現接口。

構造POSIX正則表達式的方法和創建數學表達式的方法一樣,也就是用多種元字符與操作符將小的表達式結合在一起來創建更大的表達式。


      元字符(Meta-character)
元字符是用于構造規則表達式的具有特殊含義的字符。如果要在正則表達式中包含元字符本身,必須在其前加上”/”進行轉義 
元字符      說明
*        0次、1次或多次匹配其前的原子
+        1次或多次匹配其前的原子
?        0次或1次匹配其前的原子
|        匹配兩個或多個選擇  列如 [1-9]|[a-b]|[A-Z] 與其中任何匹配為ture
^        匹配字符串串首的原子  例如 abscd===^afdgfgf 相匹配
$        匹配字符串串尾的原子  例如 dasdsv===v$
[]        匹配方括號中的任一原子  例如 s===[dsadas]
[^]      匹配除方括號中的原子外的任何字符 例如 aaaaa===[dddd]
{m}      表示其前原子恰好出現m次  
{m,n}      表示其前原子至少出現m次,至少出現n次(n>m)
{m,}      表示其前原子出現不少于m次
()        整體表示一個原子
.        匹配除換行之外的任何一個字符

^ $  這兩個原字符在一起稱為定界
abd===^abc$  只有這樣才匹配

    模式匹配的順序 
順序  元字符    說明
     1    ()         模式單元  
     2    ?* +{}      重復匹配
     3     ^$        邊界限制
     4              |        模式選擇

    POSIX正則表達式函數
ereg()和eregi()
ereg_replace()和eregi_replace()
split()和spliti()

ereg()和eregi()ereg()字符串匹配函數,eregi()是ereg()函數的忽略大小的版本
語法格式:if (!ereg('^[^./][^/]*$', $userfile))//不匹配格式輸出die
  {
    die('這是一個非法的文件名!');
  }

ereg_replace()和eregi_replace(忽略大小寫)替換
string eregi_replace (“正則表達式”,“目標替換字符”,“替換目標”)
語法格式:$string = "This is a test";
  echo str_replace(" is", " was", $string);
  echo ereg_replace("( )is", "http://1was", $string);//1 為繼承第一個整體
  echo ereg_replace("(( )is)", "http://2was", $string);//2繼承第二個整體

split()和spliti(忽略大小寫)用正則表達式將字符串分割到數組中
list:給數組中的值賦予一些變量
語法格式:$date = "04/30/1973";
  list($month, $day, $year) = split ('[/.-]', $date);//列出三個變數對應格式//以什么形式拆分 拆分誰
  echo "Month: $month; Day: $day; Year: $year<br />/n";
  輸出結果Month: 04; Day: 30; Year: 1973

php技術PHP學習正則表達式 課件第1/2頁,轉載需保留來源!

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

主站蜘蛛池模板: 亚洲午夜久久影院 | 国产午夜精品久久理论片 | 黑人玩弄极品人妻系列 | 美女激清床上戏大全 | 两百磅美女 | 暖暖日本免费播放 | 国产精品亚洲专区在线播放 | 好爽好深太大了再快一点 | 古月娜下面好紧好爽 | 扒开小处30p| 国产亚洲精品在线视频 | 欧美精品色婷婷五月综合 | 最新男同鸭子ktv | 99久久国产综合精品 | 521人成a天堂v| 国产高清美女一级a毛片久久w | 97视频免费上传播放 | 最近中文字幕高清中文 | 最新国产亚洲亚洲精品视频 | 娇女的呻吟亲女禁忌h16 | 国产亚洲精品久久久久久国 | 小黄飞二人转 | 99国产精品久久久久久久日本竹 | 日日碰狠狠躁久久躁综合网 | 狠狠色狠狠色综合日日32 | 美女撒尿无遮挡免费中国 | 亚洲欧美国产综合在线一区 | 寻找最美乡村教师颁奖晚会 | 97国产蝌蚪视频在线观看 | 97成人免费视频 | 国内外成人免费在线视频 | 34g污奶绵uk甩奶 | 午夜亚洲动漫精品AV网站 | 精品视频中文字幕 | 激情内射亚州一区二区三区爱妻 | 男生jj插入女生jj | 红桃视频国产AV | 日本高清免费一本在线观看 | 天天躁日日躁狠狠躁AV麻豆 | 亚洲欧美综合中文字幕 | 久艾草在线精品视频在线观看 |