最常用的PHP正規表示式收集整理

2022-02-03 13:19:10 字數 1626 閱讀 1333

php**

$str = preg_replace("/()(.*?)(<\/a>)/", '\1\2\3', $str);

其中用了三個子模式(每個圓括號中內容為乙個子模式),第乙個是鏈結開始標籤,第二個是鏈結文字,第三個是

然後第二個引數中\1、\2、\3就表示這三個部分,要替換成什麼樣子還不簡單?

獲取頁面中的所有鏈結位址的php函式

下面這個用php寫的函式,可以獲取任意的字串$string中的所有鏈結位址($string可以是從乙個html頁面檔案直接讀取出來的字串),結果儲存在乙個陣列中返回.該函式自動把電子郵件位址排除在外,而且返回的陣列中不會有重複元素.

**如下:

function getalllink($string)

return $output;

}以下是以php的語法所寫的示例

驗證字串是否只含數字與英文,字串長度並在4~16個字元之間

**如下:

<?php

$str = 'a1234';

if (preg_match("^[a-za-z0-9]$", $str)) else

?>

簡易的台灣身分證字型大小驗證

**如下:

<?php

$str = 'a1234';

if (preg_match("^(?:\d|\d)$", $str)) else

?>

下面的**實現文字中的**塊,功能就如你在指令碼之家看到的**一樣。

**如下:

function codedisp($code) 

$message = preg_replace("/\s*\[code\](.+?)\[\/code\]\s*/ies", "codedisp('\\1')", $message);

$message = preg_replace("/\s*\[html\](.+?)\[\/html\]\s*/ies", "htmldisp('\\1')", $message);

匹配中文字元的正規表示式: [\u4e00-\u9fa5]

評注:匹配中文還真是個頭疼的事,有了這個表示式就好辦了

匹配雙位元組字元(包括漢字在內):[^\x00-\xff]

評注:可以用來計算字串的長度(乙個雙位元組字元長度計2,ascii字元計1)

匹配空白行的正規表示式:\n\s*\r

評注:可以用來刪除空白行

匹配html標記的正規表示式:<(\s*?)[^>]*>.*?|<.*? />

評注:網上流傳的版本太糟糕,上面這個也僅僅能匹配部分,對於複雜的巢狀標記依舊無能為力

匹配首尾空白字元的正規表示式:^\s*|\s*$

評注:可以用來刪除行首行尾的空白字元(包括空格、製表符、換頁符等等),非常有用的表示式

匹配帳號是否合法(字母開頭,允許5-16位元組,允許字母數字下劃線):^[a-za-z][a-za-z0-9_]$

評注:表單驗證時很實用

匹配國內**號碼:\d-\d|\d-\d

評注:匹配形式如 0511-4405222 或 021-87888822

匹配身份證:\d|\d

評注:中國的身份證為15位或18位

最常用的正規表示式(收集)

匹配中文字元的正規表示式 u4e00 u9fa5 評注 匹配中文還真是個頭疼的事,有了這個表示式就好辦了 匹配雙位元組字元 包括漢字在內 x00 xff 評注 可以用來計算字串的長度 乙個雙位元組字元長度計2,ascii字元計1 匹配空白行的正規表示式 n s r 評注 可以用來刪除空白行 匹配ht...

PHP正規表示式收集

匹配中文字元的正規表示式 u4e00 u9fa5 評注 匹配中文還真是個頭疼的事,有了這個表示式就好辦了 匹配雙位元組字元 包括漢字在內 x00 xff 評注 可以用來計算字串的長度 乙個雙位元組字元長度計2,ascii字元計1 匹配空白行的正規表示式 n s r 評注 可以用來刪除空白行 匹配ht...

最常用的正規表示式

自從開始學js和php,接觸正規表示式也有一兩年。而到自己這裡,卻一直是複製,貼上,拿起筆,一句話,不會寫。今天收集了這麼多,爭取在最近拿下,其實並不難,怪自己太懶了。先貼出來,大家也可以方便查閱。1 數字 0 9 2 n位的數字 d 3 至少n位的數字 d 4 m n位的數字 d 5 零和非零開頭...