日本免费精品_最新日韩一区_亚洲视频一区在线_a在线视频观看_天天射夜夜骑_粉嫩av一区二区三区_欧美中日韩免费视频_综合图区欧美_国内精品美女在线观看_午夜精品久久久久久久男人的天堂

首頁 > 編程 > Regex > 正文

PHP正則表達式的使用技巧

2024-09-07 17:40:13
字體:
來源:轉載
供稿:網友

在學習PHP正則表達式的時候都是由由淺入深的闡述PHP正則表達式的使用方法而入手的,但是我們在使用過程中難免會忘記一些比較困難的知識點,因此小編就整理出了關于PHP正則表達式的使用技巧給大家參考。

PHP正則表達式的定義:

用于描述字符排列和匹配模式的一種語法規則。它主要用于字符串的模式分割、匹配、查找及替換操作。

PHP中的正則函數:

PHP中有兩套正則函數,兩者功能差不多,分別為:

一套是由PCRE(Perl Compatible Regular Expression)庫提供的。使用“preg_”為前綴命名的函數;

一套由POSIX(Portable Operating System Interface of Unix )擴展提供的。使用以“ereg_”為前綴命名的函數;(POSIX的正則函數庫,自PHP 5.3以后,就不在推薦使用,從PHP6以后,就將被移除)

由于POSIX正則即將推出歷史舞臺,并且PCRE和perl的形式差不多,更利于我們在perl和php之間切換,所以這里重點介紹PCRE正則的使用。

PCRE正則表達式

PCRE全稱為Perl Compatible Regular Expression,意思是Perl兼容正則表達式。

在PCRE中,通常將模式表達式(即正則表達式)包含在兩個反斜線“/”之間,如“/apple/”。

正則中重要的幾個概念有:元字符、轉義、模式單元(重復)、反義、引用和斷言,這些概念都可以在文章[1]中輕松的理解和掌握。

常用的元字符(Meta-character):

元字符???? 說明

/A?????? 匹配字符串串首的原子

/Z?????? 匹配字符串串尾的原子

/b?????? 匹配單詞的邊界???? //bis/?? 匹配頭為is的字符串?? /is/b/?? 匹配尾為is的字符串?? //bis/b/ 定界

/B?????? 匹配除單詞邊界之外的任意字符?? //Bis/?? 匹配單詞“This”中的“is”

/d???? 匹配一個數字;等價于[0-9]

/D???? 匹配除數字以外任何一個字符;等價于[^0-9]

/w???? 匹配一個英文字母、數字或下劃線;等價于[0-9a-zA-Z_]

/W???? 匹配除英文字母、數字和下劃線以外任何一個字符;等價于[^0-9a-zA-Z_]

/s???? 匹配一個空白字符;等價于[/f/t/v]

/S???? 匹配除空白字符以外任何一個字符;等價于[^/f/t/v]

/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}//1/d{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()


函數的具體使用,我們可以通過PHP手冊來找到,下面分享一些平時積累的正則表達式:

匹配action屬性

?

?

?


$str = '';
$match = '';
preg_match_all('//s+action=/"(?!http:)(.*?)/"/s/', $str, $match);
print_r($match);


在正則中使用回調函數

?

?

?


/**
* replace some string by callback function
*
*/
function callback_replace() {
$url = 'http://esfang.house.sina.com.cn';
$str = '';
$str = preg_replace ( '/(?<=/saction=/")(?!http:)(.*?)(?=/"/s)/e', 'search(/$url, //1)', $str );
echo $str;
}
function search($url, $match){
return $url . '/' . $match;
}


帶斷言的正則匹配

?

?

?


$match = '';
$str = 'xxxxxx.com.cn bold font
paragraph text
';
preg_match_all ( '/(?<=<(/w{1})>).*(?=<///1>)/', $str, $match );
echo "匹配沒有屬性的HTML標簽中的內容:";
print_r ( $match );


替換HTML源碼中的地址

?

?

?


$form_html = preg_replace ( '/(?<=/saction=/"|/ssrc=/"|/shref=/")(?!http:|javascript)(.*?)(?=/"/s)/e', 'add_url(/$url, /'//1/')', $form_html );

?


最后,正則工具雖然強大,但是從效率和編寫時間上來講,有的時候可能沒有explode來的更直接,對于一些緊急或者要求不高的任務,簡單、粗暴的方法也許更好。

而對于preg和ereg兩個系列之間的執行效率,曾看到文章說preg要更快一點,具體由于使用ereg的時候并不多,而且也要推出歷史舞臺了,再加個個人更偏好于PCRE的方式,所以筆者就不做比較了,熟悉的朋友可以發表下意見,謝謝。

?

以上內容就是PHP正則表達式的使用技巧,相信大家在堅持看完后都會發現自己對正則的運用能力有著顯著的提高。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
91精品国产99| 黄色片免费在线| 国产婷婷色一区二区三区| 日韩一级免费视频| 久久婷婷国产| 日韩久久不卡| 国产网站欧美日韩免费精品在线观看 | 欧美日韩免费高清| 日韩一级在线视频 | 91精品婷婷国产综合久久竹菊| 久久人人88| 日韩不卡中文字幕| 一区二区在线观看不卡| 在线精品日韩| 日韩欧美色综合网站| 国产一级粉嫩xxxx| 国产在线看一区| 日韩免费看网站| 国产欧美日韩中文字幕在线| 中文字幕伊人| 久久精品免费看| 亚洲福利在线观看| 最近中文字幕日韩精品| 欧美日韩国产在线观看| 国产福利不卡| 精品日韩欧美在线| 色综合影院在线| 久久久精品国产99久久精品芒果| 日韩欧美国产三级| 人妻一区二区三区免费| 国产免费久久| 在线看av的网址| 欧美日韩国产一二| 91精品国产综合久久久蜜臀粉嫩 | 不卡在线一区二区| 国产三级中文字幕| 精品国产网站在线观看| 最新中文字幕在线播放| 91精品国产自产| 亚洲热在线观看| 国产精久久久久| 久久99精品久久久久子伦| 91精品免费在线观看| 日本黄色一区二区三区| 精品三级av| 日韩在线视频二区| 日韩中文字幕在线视频观看 | 国产视频1区| 91精品国产色综合久久不卡蜜臀 | 一本久久a久久精品亚洲| 亚洲久草视频| 欧美日韩精品区| 欧美三级网址| 亚洲欧美99| 日韩精品丝袜在线| 国产婷婷精品| 91精品国产自产在线| 91精品免费观看| 中文天堂在线一区| 欧美日韩在线视频一区| 国产视频一二区| 中文字幕日韩欧美在线| 精品久久九九| 91精品国产色综合久久不卡蜜臀| 日韩在线中文视频| 欧美日韩视频免费播放| 91欧美日韩麻豆精品| 91精品国产综合久久久蜜臀粉嫩 | 欧美二三四区| 91精品国产丝袜白色高跟鞋| 久久精品不卡| 精品久久人人做人人爽| 亚洲一区资源| 欧美日韩高清在线一区| 欧美三级三级三级爽爽爽| 日韩在线视频免费观看| 日韩免费精品视频| 午夜精品一区二区三区视频免费看| 一级日本免费的| 国产日韩中文字幕| 亚洲免费播放| av中文在线播放| 日本国产在线视频| 日韩欧美中文字幕精品| 亚洲乱码中文字幕综合| 欧美日韩国产一级片| 国产香蕉精品视频| 欧美三级一区二区三区| 国产91久久久久蜜臀青青天草二 | av不卡免费看| 欧美日韩国产综合久久| 中文字幕欧美人妻精品一区蜜臀 | 亚洲综合在线不卡| 亚洲国产午夜精品| 91麻豆精品在线| 国产在线中文字幕| 久久精品蜜桃| 亚洲欧美中文字幕| 日韩欧美中文字幕视频| 国产最新在线| 欧美日韩中文字幕精品| 欧美99久久| 精品一区二区三区中文字幕在线| 第一页在线观看| 国产资源在线观看入口av| 91精品在线视频观看| 日韩中文字幕在线播放| 日韩欧美高清在线| 不卡视频一区二区| 日本a口亚洲| 国产欧美日韩中文| 91精品国产自产在线| 三级网站免费观看| 精品日韩av| 亚洲v中文字幕| 国产婷婷色一区二区三区在线| 国产乱码在线| 中文字幕最新精品| 天天摸日日摸狠狠添| 999精品色在线播放| 欧美日韩在线不卡一区| 国产福利在线导航| av免费观看国产| 中文字幕高清在线播放| 日韩欧美在线字幕| 国产日韩在线视频| 久久久水蜜桃| 日韩在线视频一区二区三区| 国产一二三精品| 麻豆精品视频入口| 国产91久久久久蜜臀青青天草二| 欧美 亚洲 精品 三区| 国产成人精品三级| 中文字幕在线欧美| 91精品国产综合久久香蕉最新版| 国产三级第一页| 一级国产黄色片| 一级一片免费视频| 中文精品在线观看| 97天天综合网| 日韩精品欧美在线| 日韩国产欧美| 日韩视频专区| 日韩中文欧美在线| 欧美日韩亚洲91| 欧美日韩亚洲综合| 91精品电影| 亚洲国产综合久久| 日韩黄色在线播放| 91精品国产日韩91久久久久久| 中文字幕精品一区二| 国产午夜在线观看| 亚州福利视频| 精品一二三四区| 久久久91精品国产| 中文精品在线| 亚洲综合在线中文字幕| 日韩精品视频在线观看免费| 欧美日韩国产中字| 91精品网站| 国产三级精品网站| 日本一欧美一欧美一亚洲视频| 亚洲一区在线观看视频| 国产高清精品在线| 日韩免费视频一区二区视频在线观看 | 日韩在线视频观看| 亚洲一区中文| 亚洲免费精品| 精品久久91| 日本а中文在线天堂| 99国产一区| 国产欧美 在线欧美| 欧美日韩精品久久久| 黄色一区二区在线观看| 国产永久在线观看| 国产三级视频在线播放线观看| 91麻豆精品国产91久久久使用方法 | 欧美日韩国产免费观看视频| 久久 天天综合| 国产在线黄色| 天天在线视频色| 午夜精品免费视频| 精品国产免费观看一区| 一区二区精品免费| 免费国产h视频在线观看86| 免费一级欧美在线观看视频| 亚洲a一级视频| 一区在线免费| 中文字幕在线亚洲| 粉嫩喷白浆久久| 精品日韩在线观看| 中文字幕在线视频网| 国产一级片网站| 亚洲视频 中文字幕| 日韩国产欧美三级| 国产午夜精品视频| 国产视频二区| 黄色在线播放网站| 国产亚洲二区| 中文字幕 欧美日韩| 日韩.com| 免费视频中文字幕| 国产亚洲人成a一在线v站| √新版天堂资源在线资源| 亚洲高清精品视频| 久久精品久久久久| 久久精品一级爱片| 精品综合久久久久| 在线观看91精品国产入口| 日韩一级精品| 日本xxxwww免费视频| 日韩精品在线免费观看| 最新中文字幕在线| 免费在线视频一区二区| 久久精品国产成人一区二区三区| 精品国产乱码久久久久久蜜臀| 国产香蕉精品视频| 欧美中文字幕视频| 国产在线日韩欧美| 欧美日韩激情一区| 99热最新网址| 亚洲一区中文字幕在线观看| 久久久久久99精品| 99久久精品国产亚洲| 亚洲综合欧美在线| 精品播放一区二区| 日韩精品 欧美| 欧美成人vr18sexvr| 中文字幕在线观看亚洲| 自拍日韩亚洲一区在线| 亚洲一区中文字幕在线观看| 日韩高清不卡在线| 婷婷精品视频| 最近中文字幕在线中文视频| 国产福利精品导航| 1区2区3区在线视频| 日韩欧美亚洲日产国| 午夜福利一区二区三区| 在线国产1区| 日韩中文字幕精品视频| 中文字幕日韩国产| 亚洲一二三不卡| 亚洲开心激情| 亚洲大片免费看| 美日韩精品免费视频| 亚洲高清在线观看一区| 欧美日韩在线观看一区| www日韩欧美| 一区在线视频观看| 日韩精品视频网站| 日韩精品在线免费观看视频| 国产一卡2卡3卡四卡网站| 一二三区精品福利视频| 91精品国产免费| 亚洲伊人婷婷| 久久手机免费观看| www 日韩| 日韩中文在线字幕| 日韩精品乱码av一区二区| 91麻豆视频网站| 韩国v欧美v日本v亚洲| 国产日韩精品在线看| 亚洲天堂国产视频| 欧美日韩综合色| 日韩在线高清视频| 在线中文字幕视频观看| 中文字幕欧美日韩在线| 亚洲高清视频一区| 91久久精品国产| 欧美三级日韩三级| 国产一二三视频| 亚洲娇小xxxx欧美娇小| 精品欧美日韩精品| 日韩在线视频一区| 中文字幕五月欧美| eeuss一区| 中文字幕视频在线观看| 一区二区精品免费| 国产拍揄自揄精品视频麻豆| 日本亚洲欧美| 在线观看中文字幕一区| 91久久中文| 欧美日韩精品欧美日韩精品 | 极品久久久久久| 国产一级网站视频在线| 欧美在线日韩精品| 日本不卡免费高清视频| 视频一区二区国产| 国产中文在线播放| 91精品视频播放| 在线欧美一级视频| 欧美日韩高清不卡| 91精品无人成人www| 久久人人精品| 久久激情中文| 日韩欧美国产不卡| 精品国产99| 日韩欧美亚洲日产国| 日韩亚洲欧美中文高清在线| 日韩中文字幕在线视频观看| 高清国产一区| 亚洲二区自拍| 日韩中文字幕亚洲| 中文字幕国产亚洲| 国产欧美日韩精品在线| 中文字幕国产亚洲| 日韩你懂的电影在线观看| 亚洲国产欧美日韩精品| 日韩视频精品在线| 在线精品观看| 精品成人久久久| 99久久婷婷| 91精品视频播放| 国产啊啊啊视频在线观看| 亚洲乱码中文字幕| 一区二区不卡视频在线观看| 亚洲欧洲日产国码av系列天堂| 久久永久免费视频| 欧美日韩一级黄| 日韩在线视频观看| 欧美日韩999| 日韩国产91| 日韩欧美在线综合| 国产三级免费观看| 日韩在线中文| 国产高清一区| 欧美1区免费| 欧美日韩高清一区二区不卡| 欧美日韩综合不卡| 国产视频97| 中文字幕国产在线| 中文字幕日韩欧美| 日韩午夜黄色| 91欧美日韩| 欧美日韩精品是欧美日韩精品| 欧美性生交大片免费| 欧美乱大交xxxxx免费| 中文字幕精品在线视频| 免费视频久久| 国产福利久久| 中文字幕 欧美 日韩| 国产视频一区三区| 国产一区不卡在线| 99久久精品国产成人一区二区| 国产日韩精品在线看| 日韩av在线中文字幕| av高清一区| 91精品国产入口| 日韩欧美字幕| 欧美国产日韩综合| 免费国产h视频在线观看86| 中文字幕在线看精品乱码| 国产黄色一区| 91久久中文| 日韩av一区二| 日韩欧美国产免费播放| 日韩国产在线不卡视频| 国产99精品| 国产无遮挡在线视频免费观看| 99视频精品全国免费| 国产99在线 | 亚洲| 国产在线一区二区视频| 红桃视频国产一区| 国产日韩精品视频| 中文字幕精品亚洲| 99久久精品国产成人一区二区| 国产日韩电影| 国产免费不卡av| 深夜福利亚洲| 欧美日韩亚洲91| 欧美 日韩 国产在线观看| 久久人人精品| 国产日韩电影| 免费视频一区三区| 久久99久久久久久久噜噜| 91亚洲国产高清| 国产一二三视频| 成人a在线观看| 国产一区精品在线| 亚洲乱码中文字幕| 色猫猫国产区一区二在线视频| 色综合天天综合网天天狠天天| 99亚洲视频| 亚洲高清免费一级二级三级| 国产一级视频| 欧美日韩精品欧美日韩精品一| 精品久久久三级| 在线观看91精品国产入口| 国产不卡的av| 一区二区视频国产| 国产午夜精品视频| 欧美日韩国产999| www.狠狠| 国产婷婷色一区二区三区在线| 国产裸体歌舞团一区二区| 欧美日韩亚洲一区| 国产小视频免费在线观看| 亚洲开心激情| 国产1区在线| 午夜国产在线视频|