gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区

站長資訊網
最全最豐富的資訊網站

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)可以理解為由多個原子組成的大的原子。
原子表,如 [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”, “\1was”, $string);\1 為繼承第一個整體
echo ereg_replace(“(( )is)”, “\2was”, $string);\2繼承第二個整體

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

多行匹配

$rows = file(‘php.ini’); //將php.ini文件讀到數組中

//循環便歷
foreach($rows as $line)
{
if(trim($line))
{
//將匹配成功的參數寫入數組中
if(eregi(“^([a-z0-9_.]*) *=(.*)”, $line, $matches)) //循環進行多行匹配
{
$options[$matches[1]] = trim($matches[2]);
}
unset($matches);
}
}

//輸出參數結果
print_r($options);

PCRE正則表達式
PCRE全稱為Perl Compatible Regular Expression,意思是Perl兼容正則表達式。
在PCRE中,通常將模式表達式(即正則表達式)包含在兩個反斜線“/”之間,如“/apple/”。

元字符(Meta-character)
元字符 說明
A 匹配字符串串首的原子
Z 匹配字符串串尾的原子
b 匹配單詞的邊界 /bis/ 匹配頭為is的字符串 /isb/ 匹配尾為is的字符串 /bisb/ 定界
B 匹配除單詞邊界之外的任意字符 /Bis/ 匹配單詞“This”中的“is”

d 匹配一個數字;等價于[0-9]
D 匹配除數字以外任何一個字符;等價于[^0-9]
w 匹配一個英文字母、數字或下劃線;等價于[0-9a-zA-Z_]
W 匹配除英文字母、數字和下劃線以外任何一個字符;等價于[^0-9a-zA-Z_]
s 匹配一個空白字符;等價于[f
tv]
S 匹配除空白字符以外任何一個字符;等價于[^f
tv]
f 匹配一個換頁符等價于 x0c 或 cL
匹配一個換行符;等價于 x0a 或 cJ
匹配一個回車符等價于x0d 或 cM
t 匹配一個制表符;等價于 x09或cl
v 匹配一個垂直制表符;等價于x0b或ck
oNN 匹配一個八進制數字
xNN 匹配一個十六進制數字
cC 匹配一個控制字符

模式修正符(Pattern Modifiers)
i -可同時匹配大小寫字母
M -將字符串視為多行
S -將字符串視為單行,換行符做普通字符看待,使“.”匹配任何字符
X -模式中的空白忽略不計
U -匹配到最近的字符串
e -將替換的字符串作為表達使用
格式:/apple/i匹配“apple”或“Apple”等,忽略大小寫。 /i

PCRE的模式單元
//1 提取第一位的屬性
/^d{2}([W])d{2}\1d{4}$匹配“12-31-2006”、“09/27/1996”、“86 01 4321”等字符串。但上述正則表達式不匹配“12/34-5678”的格式。這是因為模式“[W]”的結果“/”已經被存儲。下個位置“1”引用時,其匹配模式也是字符“/”。

當不需要存儲匹配結果時使用非存儲模式單元“(?:)”
例如/(?:a|b|c)(D|E|F)\1g/ 將匹配“aEEg”。在一些正則表達式中,使用非存儲模式單元是必要的。否則,需要改變其后引用的順序。上例還可以寫成/(a|b|c)(C|E|F)2g/。

PCRE正則表達式函數
preg_match()和preg_match_all()
preg_quote()
preg_split()
preg_grep()
preg_replace()

preg_match()和preg_match_all()正則表達式的匹配
語法格式:if (preg_match (“/php/i”, “PHP is the web scripting language of choice.”)) {
print “A match was found.”;
} else {
print “A match was not found.”;
}

preg_quote()轉義正則表達式字符
語法格式:$keywords = “$40 for a g3/400”;
$keywords = preg_quote ($keywords, “/”);//轉義誰 /轉義符號
echo $keywords;

preg_split()用正則表達式分割字符串
preg_split()本函數與split函數功能一致。
語法格式:$keywords = preg_split (“/[s,]+/”, “hypertext language, programming”);
print_r($keywords);

preg_grep()返回與模式匹配的數組單元
語法格式:$fl_array = preg_grep (“/^(d+)?.d+$/”, $array);

preg_replace()執行正則表達式的搜索和替換
語法格式:

復制代碼 代碼如下:
$string = “April 15, 2003”;
$pattern = “/(w+) (d+), (d+)/i”;
$replacement = “${1}1,$3”;
print preg_replace($pattern, $replacement, $string);

preg_match_all()進行全局正則表達式匹配
語法格式:

復制代碼 代碼如下:
preg_match_all (“|<[^>]+>(.*)</[^>]+>|U”,
“<b>example: </b><div align=left>this is a test</div>”,
$out, PREG_PATTERN_ORDER);
print $out[0][0].”, “.$out[0][1].”
“;
print $out[1][0].”, “.$out[1][1].”
“;

輸出結果:<b>example: </b>, <div align=left>this is a test</div> example: , this is a test

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区
男插女免费视频| 夜夜夜夜夜夜操| 91免费版看片| 在线观看av网页| 国产v亚洲v天堂无码久久久| 欧美视频在线播放一区| 国产午夜大地久久| 真人抽搐一进一出视频| 欧美激情视频免费看| 黄色一级大片免费| 国产真实老熟女无套内射| 成人在线播放网址| 精品视频在线观看一区| 成人观看免费完整观看| 性欧美极品xxxx欧美一区二区| 日韩在线第三页| 色一情一区二区三区| 在线免费黄色网| 日本美女爱爱视频| 91九色在线观看视频| 激情内射人妻1区2区3区| 免费一区二区三区在线观看| 国产色视频在线播放| 国产日韩视频在线播放| 欧美日韩福利在线| 午夜视频你懂的| 国产一二三四区在线观看| 黄色大片在线免费看| 亚洲免费看av| 300部国产真实乱| 欧美成人免费高清视频| theporn国产精品| 国产精品12345| 在线观看亚洲色图| 亚洲色成人www永久在线观看| 春日野结衣av| 不卡的在线视频| 福利在线一区二区| 久久婷婷综合色| 草草久久久无码国产专区| 天天操狠狠操夜夜操| 久久男人资源站| 91免费视频污| 波多野结衣家庭教师视频| 中国老女人av| 中文字幕66页| 黄色国产小视频| 日本手机在线视频| 三年中国中文在线观看免费播放| 欧美 国产 日本| 欧美日韩视频免费| 欧洲美女亚洲激情| 邪恶网站在线观看| 色诱视频在线观看| 日韩欧美不卡在线| 污污污污污污www网站免费| 国产成年人视频网站| 欧美精品aaaa| 国语对白做受xxxxx在线中国| 欧美极品少妇无套实战| 日本xxx免费| 欧美亚洲视频一区| 亚洲免费在线播放视频| 可以看污的网站| xx欧美撒尿嘘撒尿xx| caopor在线视频| 精品久久久久久中文字幕2017| 97视频在线免费| 欧美午夜性视频| 欧美精品久久久久久久自慰| 超碰人人爱人人| 成年在线观看视频| 免费观看亚洲视频| 无码人妻精品一区二区蜜桃百度| 在线观看视频黄色| 裸体裸乳免费看| 日产精品久久久久久久蜜臀| 日本男女交配视频| 国产午夜大地久久| 亚洲成人av免费看| 久久精品国产露脸对白| 天堂av免费看| 国产精品久久久久9999爆乳| 男人天堂av片| 亚洲人成色77777| 天天干天天爽天天射| 黄色免费高清视频| 国产一区二区片| 日韩一级片播放| 日韩视频在线观看一区二区三区| 视色,视色影院,视色影库,视色网 日韩精品福利片午夜免费观看 | 欧美高清中文字幕| 人妻av中文系列| 亚洲精品自拍网| 亚洲色欲久久久综合网东京热| 欧美日韩在线一| 邪恶网站在线观看| 日韩欧美一级在线| 男人的天堂日韩| 今天免费高清在线观看国语| www.国产区| 女同性恋一区二区| 国产xxxxx在线观看| 超碰成人在线免费观看| www.com毛片| 国产日产欧美一区二区| 黄色一级大片在线观看| 日本三级福利片| 国产天堂在线播放| 国内精品在线观看视频| 三级黄色片免费看| 亚洲三级视频网站| 精品视频在线观看一区二区| 天堂中文av在线| 四虎永久在线精品无码视频| 欧美性猛交内射兽交老熟妇| 91视频这里只有精品| av在线观看地址| 992tv成人免费观看| 国产区二区三区| 黄色一级视频片| 成人性免费视频| 99国产精品白浆在线观看免费| 国产精品v日韩精品v在线观看| 日日摸日日碰夜夜爽av| 久久av综合网| 欧美日韩不卡在线视频| 一级黄色高清视频| 日本超碰在线观看| 一女二男3p波多野结衣| 欧美国产日韩在线播放| 亚洲精品无码久久久久久| 美脚丝袜脚交一区二区| av动漫在线免费观看| 成人在线免费高清视频| 日日夜夜精品视频免费观看| 91pony九色| 手机成人av在线| 成人在线观看毛片| 国产精品videossex国产高清| 粉嫩av一区二区三区天美传媒| 两性午夜免费视频| 四虎免费在线观看视频| 成人黄色片免费| 免费无遮挡无码永久视频| 亚洲熟妇无码另类久久久| 青青青国产在线观看| 成人在线看视频| av亚洲天堂网| 亚洲第一综合网站| 福利视频一二区| 成人在线免费观看av| 亚洲色图38p| 91福利免费观看| 隔壁人妻偷人bd中字| 1024av视频| 国产高清av片| 欧美亚洲黄色片| 99视频在线免费| 免费成人深夜夜行网站视频| 大荫蒂性生交片| 91热这里只有精品| 超碰97在线看| 欧美日韩大尺度| 超薄肉色丝袜足j调教99| 欧洲黄色一级视频| 精品久久免费观看| 波多野结衣家庭教师在线| 特黄视频免费观看| 久久99久久99精品| 蜜桃福利午夜精品一区| 少妇人妻大乳在线视频| 亚洲美女性囗交| 黑人糟蹋人妻hd中文字幕| 国产大片一区二区三区| 女人天堂av手机在线| 国内自拍第二页| 亚洲色精品三区二区一区| 中文字幕色呦呦| www.国产视频.com| 六月丁香婷婷在线| 日韩成人三级视频| 青娱乐精品在线| 第四色婷婷基地| 免费黄色日本网站| 国产免费一区二区视频| 无套内谢丰满少妇中文字幕| 日本精品久久久久中文字幕| 国产精品自拍合集| 善良的小姨在线| 久久精品亚洲天堂| 艹b视频在线观看| 日韩中文字幕免费在线| 中文字幕无码精品亚洲35| 免费拍拍拍网站| 国精产品一区一区三区视频| 成年丰满熟妇午夜免费视频| 日日夜夜精品视频免费观看 | 五月天六月丁香| 久久出品必属精品|