PHP中的正規表示式

2021-09-19 14:47:17 字數 1718 閱讀 7575

定界符,就是定乙個邊界,邊界已內的就是正則表達示。

php的正則表達示定界符的規定如下:

定界符,不能用a-za-z0-9\ 其他的都可以用。必須成對出現,有開始就有結束。

所有可見不可見的字元就是原子

說明:我們見到的空格、回車、換行、0-9、a-za-z、中文、標點符號、特殊符號全為原子。

int preg_match ( string $正則 , string $字串 [, array &$結果] )

功能:根據$正則變數,匹配$字串變數。如果存在則返回匹配的個數,把匹配到的結果放到$結果變數裡。如果沒有匹配到結果返回0。

事例: <?php

$zz = '/ /';

$string = 'sssssw aaaaa';

if(preg_match($zz, $string, $matches))else

?>

輸出結果:

匹配到了,結果為:array(1)

+ 匹配最少1次前面的字元

* 匹配0次或者任意多次前面的字元

? 前面的字元出現0次或者1次,可有可無

. (點) 匹配除\n以外的所有字元

|(豎線),或者,優先順序最低

^ (抑揚符),必須要以^之後的字串開始

\b和\b 詞邊界和非詞邊界:

\b詞邊界,就是指必須要在最前或者最後。

\b非邊界,就是不能在乙個正則表達示的最前或者最後。

有且只能出現m次

可以出現n到m次

至少m次,最大次數不限制

i 不區分大小寫

s 識為一行

x 忽略空白字元

e 將匹配項找出來,進行替換

例:<?php

$string = "";

//'w'匹配字母,數字和下劃線,'d'匹配0-9數字,'+'元字元規定其前導字元必須在目標物件中連續出現一次或多次

$pattern = "//i";

$replacement = "\$2";

//字串被替換為與第 n 個**獲的括號內的子模式所匹配的文字

echo preg_replace($pattern, $replacement, $string);

?>

輸出結果:15

上例中\$2 指向的是正則表達示的第乙個(\d+)。相當於把15又取出來了

替換的時候,我寫上\$2。將匹配項取出來,用來再次替換匹配的結果。

u 貪婪模式控制

a 從目標字串的開頭開始匹配

d 結束$符後不准有回車

PHP中的正規表示式

url php繼承unix的一貫傳統,完全支援正規表示式的處理。正規表示式提供了一種高階的,但不直觀的字串匹配和處理的方法。用過perl的正規表示式的朋友都知道,正規表示式的功能非常強大,但學起來不是那麼容易。比如 這段有效卻難以理解的 足夠使一些程式設計師頭痛 我就是 或者讓他們放棄使用正規表示式...

PHP中的正規表示式

php繼承 nix的一貫傳統,完全支援正規表示式的處理。正規表示式提供了一種高階的,但不直觀的字串匹配和處理的方法。用過perl的正規表示式的朋友都知道,正規表示式的功能非常強大,但學起來不是那麼容易。比如 這段有效卻難以理解的 足夠使一些程式設計師頭痛 我就是 或者讓他們放棄使用正規表示式。相信當...

PHP中的正規表示式

綜述?正規表示式是一種可以用於模式匹配和調換的強有力的工具。正規表示式可以讓使用者通過應用一系列的特別字元構建匹配模式,然後把匹配模式與資料檔案 程式輸進以及web頁面的表單輸進等目標物件進行比擬,根據比擬物件中是否包含匹配模式,履行相應的程式。如何應用基礎模式匹配?模式,是正規表示式最基礎的元素,...