91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php正則特殊字符轉義的方法

發布時間:2020-10-22 14:24:17 來源:億速云 閱讀:231 作者:小新 欄目:編程語言

這篇文章主要介紹php正則特殊字符轉義的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

php正則特殊字符轉義的方法:首先創建PHP示例文件;然后定義字符串;最后通過反斜杠對特殊字符進行轉義,并對變量進行解析即可。

問題

最近使用PHP正則表達式,書寫表達式字符串的時候遇到了一些問題,不知道何時需要用反斜杠“\”,現在進行一些梳理。

PHP字符串

PHP字符串的定義方法有4種:

  • 單引號
  • 雙引號
  • heredoc 語法結構
  • nowdoc 語法結構 (自PHP 5.3.0以后)

在定義字符串的時候,會對特殊字符進行轉義,對變量進行解析。

特殊字符包括:

項目內容備注
換行\nLF 或 0x0A
回車\rCR 或 0x0D
水平制表符\tHT 或 0x09
垂直制表符\vVT 或 0x0B
換頁\fFF 或 0x0C
反斜杠\\
美元符號\$
雙引號\"
單引號\'
8進制字符\[0-7]{1,3}
16進制字符\x[0-9A-Fa-f]{1,2}

這部分詳見 PHP Mannual ,這里簡要記述一下:

單引號中,對單引號(')與反斜杠(\)進行轉義,對其它字符原意輸出;

雙引號中,對除雙引號(\")的特殊字符進行轉義,對變量進行解析。

因此,在這兩種常見的字符串定義中,對反斜杠(\)總是要轉義的。

PHP 正則表達式

PHP提供了兩套正則表達式函數庫:【參考】

一套是由PCRE(Perl Compatible Regular Expression)庫提供的。使用“preg_”為前綴命名的函數;
一套由POSIX(Portable Operating System Interface of Unix )擴展提供的(PHP默認)。使用以“ereg_”為前綴命名的函數;

正則表達式提供了匹配、替換、分割的功能。

目前只是用了perl風格的正則函數,以下僅對這類的字符串進行說明。

Perl風格的正則表達式,要求包含在定界符("/" 或 "#")中,如下面這樣:【參考】

$str = 'http://www.youku.com/show_page/id_ABCDEFG.html';
$regex = '/^http:\/\/([\w.]+)\/([\w]+)\/([\w]+)\.html$/i';
$regex = '#^http://([\w.]+)/([\w]+)/([\w]+)\.html$#i';

為了將一個URL進行分割,$regex 變量定義了正則表達式字符串:

^http://([\w.]+)/([\w]+)/([\w]+).html$

這個字符串包含了一些特殊字符,如"/" 與".",這在Perl風格中需要用反斜杠("\")進行轉義定義,如下:

^http:\/\/([\w.]+)\/([\w]+)\/([\w]+)\.html$

同時這個字符串需要被包含在定界符中,于是就有了上面的兩類表示方式;以"#"為定界符的,不需要對其中的"/" 進行轉義。

正則表達式轉義

在正則表達式中,若要匹配以下單個字符,都需要用反斜杠("\")進行轉義:

"\"、"?"、"*"、"^"、"$"、"+"、"("、")"、"|"、"{"、"["

在Perl風格的正則表達式中,如果匹配以下單個字符,或者上面未匹配的單個字符,還需要用反斜杠("\")進行轉義:

^=}]/:<>.'"

總結

要寫出一個正確的Perl風格正則表達式字符串,需要進行三步:

寫出正確的正則表達式,注意特殊字符的轉義

放入定界符中,并以Perl風格的轉義規則進行轉義

對上述字符串的內容,按照PHP字符串定義的方式進行轉義

以上是php正則特殊字符轉義的方法的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

永春县| 韶山市| 江油市| 莱阳市| 德化县| 庆阳市| 城口县| 菏泽市| 芜湖市| 普兰县| 宝应县| 井冈山市| 大荔县| 襄城县| 盐池县| 兴隆县| 泰和县| 云阳县| 浪卡子县| 大名县| 祁门县| 蒙阴县| 宜川县| 靖边县| 邓州市| 政和县| 阜城县| 华阴市| 会理县| 济阳县| 江城| 惠来县| 环江| 海南省| 华亭县| 南充市| 阳曲县| 高唐县| 阿克苏市| 延津县| 临桂县|