搜尋
首頁php教程php手册三分钟学会PHP正则表达式

三分钟学会PHP正则表达式

Jun 13, 2016 am 11:04 AM
phpweb動態學會開發正規則用的編寫腳本表達式語言頁面

PHP是编写动态WEB页面开发常用的脚本语言,而正则表达式是PHP中很重要的一个部分,下面我们就PHP正则表达式和大家详细的谈谈吧。在ASP和ColdFusion,用户可以混合使用PHP和HTML编写WEB页面,当访问者浏览到该页面时,服务端会首先对页面中的PHP命令进行处理,然后把处理后的结果连同HTML内容一起传送到访问端的浏览器。

但是与ASP或 ColdFusion不同,PHP是一种源代码开放程序,拥有很好的跨平台兼容性。用户可以在Windows NT系统以及许多版本的Unix系统上运行PHP,而且可以将PHP作为Apache服务器的内置模块或CGI程序运行。除了能够精确的控制WEB页面的显示内容之外,用户还可以通过使用PHP发送HTTP报头。用户可以通过PHP设置cookies,管理用户身份识别,并对用户浏览页面进行重定向。PHP具有非常强大的数据库支持功能,能够访问几乎目前所有较为流行的数据库系统。此外,PHP可以与多个外接库集成,为用户提供更多的实用功能,如生成PDF文件等。虽然很多人对PHP正则表达式已经很熟悉了,不过作为重要的基础部分,笔记还是不能免掉的。

PHP正则表达式介绍:

1.中括号

<ol class="dp-xml">
<li class="alt"><span><span>[0-9]匹配0-9  </span></span></li>
<li class=""><span>[a-z]匹配a-z小写字母  </span></li>
<li class="alt"><span>[A-Z]匹配A-Z大写字母  </span></li>
<li class=""><span>[a-zA-Z]匹配所有大小写字母  </span></li>
<li class="alt"><span>可以使用ascii来制定更多 </span></li>
</ol>

2.量词

<ol class="dp-xml">
<li class="alt"><span><span>p+匹配至少一个含p的字符串  </span></span></li>
<li class=""><span>p*陪陪任何包含0个或多个p的字符串  </span></li>
<li class="alt"><span>p?匹配任何包含0个或一个p的字符串  </span></li>
<li class=""><span>p{2}匹配包含2个p的序列的字符串  </span></li>
<li class="alt"><span>p{2,3}匹配任何包含2个或3个的字符串  </span></li>
<li class=""><span>p$匹配任何以p结尾的字符串  </span></li>
<li class="alt"><span>^p匹配任何以p开头的字符串  </span></li>
<li class=""><span>[^a-zA-Z]匹配任何不包含a-zA-Z的字符串  </span></li>
<li class="alt"><span>p.p匹配任何包含p、接下来是任何字符、再接下来有又是p的字符串  </span></li>
<li class=""><span>^.{2}$匹配任何值包含2个字符的字符串  </span></li>
<li class="alt">
<span></span><strong><font color="#006699"><span class="tag"><span class="tag-name">b</span><span class="tag">></span></span></font></strong><span>(.*)</span><strong><font color="#006699"><span class="tag"><span class="tag-name">b</span><span class="tag">></span></span></font></strong><span>匹配任何被</span><strong><font color="#006699"><span class="tag"><span class="tag-name">b</span><span class="tag">></span><span class="tag"><span class="tag">></span></span></span></font></strong><span>包围的字符串  </span>
</li>
<li class=""><span>p(hp)*匹配任何一个包含p,后面是多个或0个hp的字符串 </span></li>
</ol>

3.预定义字符范围

<ol class="dp-xml">
<li class="alt"><span><span>[:alpha:]同[a-zA-Z]  </span></span></li>
<li class=""><span>[:alnum:]同[a-zA-Z0-9]  </span></li>
<li class="alt"><span>[:cntrl:]匹配控制字符,比如制表符,反斜杠,退格符  </span></li>
<li class=""><span>[:digit:]同[0-9]  </span></li>
<li class="alt"><span>[:graph:]所有ASCII33~166范围内可以打印的字符  </span></li>
<li class=""><span>[:lower:]同[a-z]  </span></li>
<li class="alt"><span>[:punct:]标点符号  </span></li>
<li class=""><span>[:upper:]同[A-Z]  </span></li>
<li class="alt"><span>[:space:]空白字符,可以是空格、水平制表符、换行、换页、回车  </span></li>
<li class=""><span>[:xdigit:]十六进制符同[a-fA-F0-9] </span></li>
</ol>

4.ereg语句可以区分大小写来判断,下例

<ol class="dp-xml"><li class="alt"><span><span>if (ereg("([^a-z])","aaaaZaaaaaaa")) echo "不全是小写的!"; </span></span></li></ol>

ereg还可以返回一个数组 例如

<ol class="dp-xml">
<li class="alt"><span><span>$</span><span class="attribute"><font color="#ff0000">url</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"http://www.xuandun.net"</font></span><span>;  </span></span></li>
<li class="">
<span>$</span><span class="attribute"><font color="#ff0000">a</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">ereg</font></span><span>("^(http://www).([[:alnum:]]+).([[:alnum:]]+)",$url,$regs);  </span>
</li>
<li class="alt">
<span>echo $regs[0],"</span><strong><font color="#006699"><span class="tag"><span class="tag-name">br</span><span class="tag">></span></span></font></strong><span>";  </span>
</li>
<li class="">
<span>echo $regs[1],"</span><strong><font color="#006699"><span class="tag"><span class="tag-name">br</span><span class="tag">></span></span></font></strong><span>";  </span>
</li>
<li class="alt">
<span>echo $regs[2],"</span><strong><font color="#006699"><span class="tag"><span class="tag-name">br</span><span class="tag">></span></span></font></strong><span>";  </span>
</li>
<li class="">
<span>echo $regs[3],"</span><strong><font color="#006699"><span class="tag"><span class="tag-name">br</span><span class="tag">></span></span></font></strong><span>"; </span>
</li>
</ol>

得到

<ol class="dp-xml">
<li class="alt"><span><span>http://www.xuandun.net  </span></span></li>
<li class=""><span>http://www  </span></li>
<li class="alt"><span>xuandun  </span></li>
<li class=""><span>net  </span></li>
</ol>

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。