當前位置:ag真人国际官网-ag旗舰厅官方网站 » 編程語言 » 正則匹配php

正則匹配php-ag真人国际官网

發布時間: 2024-11-10 03:46:01

1. php正則表達式匹配一段中文,中間有換行,空白,應該怎麼寫

有多種處理方法:

1、使用[ss]匹配任意字元,而不是使用「.」
2、使用s單行修飾模式,例:$pattern='#abc.*?def#s';//能匹配abc換行def
3、使用s*匹配換行和空格,php里s能匹配空白字元,含換行

php里的中文使用[x7f-xff]表示,因此,使用正則:

$pattern='#[x7f-xff] (?:s*[x7f-xff] )*#';即可

2. php正則匹配數字

式子:/^[a-za-z0-9] $/u

釋義:

"/":表示正則表達式的定義,固定寫法。

"^":表示開頭。

"[]":表示字元組。匹配所包含的任意一個字元。如,「[ab]」匹配「plain」中的「a」。

"a-z":表示匹配小寫字母a-z的字母範圍。

"a-z":表示匹配大寫字母a-z的字母範圍。

"0-9":表示匹配0-9的數字范圍。

" ":表示匹配次數大於等於1。

"$":匹配輸入行尾。如果設置了regexp對象multiline屬性,$也匹配「 」或「 」之前的位置。


"u":最後的u是模式修飾符,嚴格的說可能叫預定義常量。表示使用unicode進行匹配。

(2)正則匹配php擴展閱讀:

正則表達式的特點是:

1. 靈活性、邏輯性和功能性非常強;

2. 可以迅速地用極簡單的方式達到字元串的復雜控制。

3. 對於剛接觸的人來說,比較晦澀難懂。

由於正則表達式主要應用對象是文本,因此它在各種文本編輯器場合都有應用,小到著名編輯器editplus,大到microsoft word、visual studio等大型編輯器,都可以使用正則表達式來處理文本內容。

3. php常用正則表達式匯總

1、w就是匹配字母或數字或下劃線或漢字, 則與*差不多,區別是 包括重復0次,而*就可以。=就ushi匹配=號兩個斜杠則表示正則表達式的分界。

2、正則表達式的限定符有:thinkphp的自動驗證機制是為了進行表單數據驗證,驗證可以支持function、callback、confirm、equal、unique和regex,這里要講的是使用正則表達式進行驗證。特殊字元許多元字元要求在試圖匹配它們時特別對待。

3、^/?[a-za-z0-9=:]*$!是對php中單引號的轉義。或者還有更簡單的!^/?[a-z0-9=:]*$!ii表示忽略大小寫。模式分隔符就是為了區分表達式和像i這樣的模式修飾符而設計的。

4. 超常用的php正則表達式收集整理

以下就是對超常用的php正則表達式進行的收集整理,為了方便大家更快更好的掌握php正則表達式。
一、表單驗證匹配
驗證賬號,字母開頭,允許
5-16
位元組,允許字母數字下劃線:^[a-za-z][a-za-z0-9_]{4,15}$
驗證賬號,不能為空,不能有空格,只能是英文字母:^\s [a-z
a-z]$
驗證賬號,不能有空格,不能非數字:^\d $
驗證用戶密碼,以字母開頭,長度在
6-18
之間:^[a-za-z]\w{5,17}$
驗證是否含有
^%&',;=?$\
等字元:[^%&',;=?$\x22]
匹配email地址:\w ([- .]\w )*@\w ([-.]\w )*\.\w ([-.]\w )*
匹配騰訊qq號:[1-9][0-9]{4,}
匹配日期,只能是
2004-10-22
格式:^\d{4}\-\d{1,2}-\d{1,2}$
匹配國內電話號碼:^\d{3}-\d{8}|\d{4}-\d{7,8}$------------評註:匹配形式如010-12345678
或0571-12345678

0831-1234567
匹配中國郵政編碼:^[1-9]\d{5}(?!\d)$
匹配身份證:\d{14}(\d{4}|(\d{3}[xx])|\d{1})------------評註:中國的身份證為15
位或18

不能為空且二十位元組以上:^[\s|\s]{20,}$
二、字元匹配
匹配由
26
個英文字母組成的字元串:^[a-za-z] $
匹配由
26
個大寫英文字母組成的字元串:^[a-z] $
匹配由
26
個小寫英文字母組成的字元串:^[a-z] $
匹配由數字和
26
個英文字母組成的字元串:^[a-za-z0-9] $
匹配由數字、26個英文字母或者下劃線組成的字元串:^\w $
匹配空行:\n[\s|
]*\r
匹配任何內容:[\s\s]*
匹配中文字元:[\x80-\xff]
或者
[\xa1-\xff]
只能輸入漢字:^[\x80-\xff],{0,}$
匹配雙位元組字元(包括漢字在內):[^\x00-\xff]
三、匹配數字
只能輸入數字:^[0-9]*$
只能輸入n位的數字:^\d{n}$
只能輸入至少n位數字:^\d{n,}$
只能輸入m-n位的數字:^\d{m,n}$
匹配正整數:^[1-9]\d*$
匹配負整數:^-[1-9]\d*$
匹配整數:^-?[1-9]\d*$
匹配非負整數(正整數

0):^[1-9]\d*|0$
匹配非正整數(負整數

0):^-[1-9]\d*|0$
匹配正浮點數:^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$
匹配負浮點數:^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$
匹配浮點數:^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0 |0)$
匹配非負浮點數(正浮點數

0):^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0 |0$
匹配非正浮點數(負浮點數

0):^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0 |0$
四、其他
匹配html標記的正則表達式(無法匹配嵌套標簽):<(\s*?)[^>]*>.*?|<.*?
/>
匹配網址
url
:[a-za-z] ://[^\s]*
匹配
ip
地址:((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)
匹配完整域名:[a-za-z0-9][-a-za-z0-9]{0,62}(\.[a-za-z0-9][-a-za-z0-9]{0,62}) \.?
提示
上述正則表達式通常都加了
^

$
來限定字元的起始和結束,如果需要匹配的內容包括在字元串當中,可能需要考慮去掉
^

$
限定符。
以上正則表達式僅供參考,使用時請檢驗後再使用,希望通過這些超常用的php正則表達式

5. 怎麼用php正則獲得a標簽內的文字啊

php中正則匹配只要使用這兩個函數:

preg_match_all

preg_match

這里使用preg_match_all,代碼如下:

$subject='abc測試';//假設這是需要匹配的字元串

$pattern='/]*>(.*)/';//這是匹配的正則表達式

preg_match_all($pattern,$subject,$matches);//開始匹配,該函數會把匹配結果放入$matches數組中


echo"
";
print_r($matches);
/**
結果是:

array
(
[0]=>array
(
[0]=>abc測試
)

[1]=>array
(
[0]=>abc測試
)

)

*/

6. 求php正則表達式 要求匹配 純英文字元串#純數字(位數不限), 謝謝

  1. 正則為:/^[a-z0-9#]*$/


  2. 檢測代碼如下:

$str='####1414adsad';
if(preg_match("/^[a-z0-9#]*$/",$str))
{
echo"驗證成功";
}
else
{
echo"驗證失敗";
}

3. 可以改變$str的值來檢測,該正則是否正確

7. php 正則表達式 url匹配

1,preg_grep(pattern,array);它的返回值是一個新數組,新數組的元素是成功匹配的元素。

熱點內容
發布:2024-11-19 10:23:05 瀏覽:875
接龍源碼 發布:2024-11-19 10:14:48 瀏覽:33
驅動軟體哪個安卓版好 發布:2024-11-19 10:08:28 瀏覽:703
伺服器一鍵搭建java環境 發布:2024-11-19 10:08:27 瀏覽:729
布丁少兒編程 發布:2024-11-19 09:57:11 瀏覽:98
vb資料庫數組 發布:2024-11-19 09:23:40 瀏覽:828
安卓游戲數據保存在哪裡找 發布:2024-11-19 09:22:02 瀏覽:310
解壓出來的文件亂碼 發布:2024-11-19 09:15:40 瀏覽:940
北航ftp是多少 發布:2024-11-19 09:15:32 瀏覽:822
瀏覽保存密碼如何取消 發布:2024-11-19 09:10:17 瀏覽:90
网站地图