日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

php的正则表达式函数,php中常用的正则表达式函数

發布時間:2023/12/10 php 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php的正则表达式函数,php中常用的正则表达式函数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

php中常用的正則表達式函數

* preg_match()

* preg_match_all()

* preg_replace()

* preg_filter()

* preg_grep()

* preg_split()

* preg_quote()

接下來對比講解:

講解中 $pattern 通常表示正則表達式

$subject 通常表示目標處理數據

定義一個方法 方便查看數據類型:

function show($val = null){

if(empty($val)){

//打印空

echo 'null';

}elseif(is_array($val) || is_object($val)){

//打印數組或者對象

echo '

';

print_r($val);

echo '

';

}else{

//打印string int float

echo $val;

}

}

preg_match()與preg_match_all()

/*方法簡單說明*/

preg_match($pattern,$subject,[array &$matches]) //匹配一次 第三個參數可選 匹配結果放置matches數組

preg_match_all($pattern,$subject,array &matches) //匹配多次 三參必選 匹配結果放置matches數組

$pattern = '/[0-9]/';

$subject='b5fg4sgf3sd2f1g';

$m1 =preg_match($pattern,$subject,$arr1);

show($m1);

show($arr1);

/*

1

Array

(

[0] => 5

)

*/

$m2 =preg_match_all($pattern,$subject,$arr2);

show($m2);

show($arr2);

/*

5

Array

(

[0] => Array

(

[0] => 5

[1] => 4

[2] => 3

[3] => 2

[4] => 1

)

)

*/

2.preg_replace()與preg_filter()/*方法簡單說明*/

* preg_replace與preg_filter

* preg_replace($pattern,$replacement,$subject)

* //正則替換函數被替換對象是數組 返回全部

//正則替換函數 被替換對象是數組 僅返回被替換元素

* 聯想:str_repalce()

* echo str_replace("world","Shanghai","Hello world!");

* //得到Hello Shanghai!

//第一測 字符串中替換字符串 結論:此處preg_replace()與preg_filter()無區別

$pattern = '/[0-9]/';

$subject='b65fg4sgf3sd2f1g';

$replacement = '_';

$str1 = preg_replace($pattern,$replacement,$subject);

$str2 = preg_filter($pattern,$replacement,$subject);

echo '


';

show($str1);

echo '
';

show($str2);

/*

b__fg_sgf_sd_f_g

b__fg_sgf_sd_f_g

*/

//第二測 字符串中根據數組正則 替換 結論:此處preg_replace()與preg_filter()無區別

$pattern = array('/[123]/','/[456]/','/[789]/');

$subject='b123fg3456sgf3789f1g';

$replacement = array('天','地','人');

$str3 = preg_replace($pattern,$replacement,$subject);

$str4 = preg_filter($pattern,$replacement,$subject);

echo '


';

show($str3);

echo '
';

show($str4);

/*

b天天天fg天地地地sgf天人人人f天g

b天天天fg天地地地sgf天人人人f天g

*/

//第三測 數組中根據數組正則 替換 結論:此處展示preg_repalce()與preg_filter()有區別

$pattern = array('/[123]/','/[456]/','/[789]/');

$subject=array('b','fg3','456','sgf','789','fg');

$replacement = array('天','地','人');

$str5 = preg_replace($pattern,$replacement,$subject);

$str6 = preg_filter($pattern,$replacement,$subject);

echo '


';

show($str5);

echo '
';

show($str6);

/*

Array

(

[0] => b

[1] => fg天

[2] => 地地地

[3] => sgf

[4] => 人人人

[5] => fg

)

Array

(

[1] => fg天

[2] => 地地地

[4] => 人人人

)

*/

3 . preg_grep($pattern, array $subject) //此處$subject只可以為一維數組

/*函數說明*/

preg_grep($pattern,array $input)//只可以匹配一維數組 返回匹配成功的數組元素

可以理解preg_grep()為閹割版 preg_filter()

只做了匹配 不作替換

$pattern = '/[0-9]/';

$subject=array('b','fg3','456','sgf','789','fg');

$arr = preg_grep($pattern,$subject);

show($arr);

/*

Array

(

[1] => fg3

[2] => 456

[4] => 789

)

*/

4 . preg_split($pattern,$subject)//一匹配成功為切割點切割字符串成數組

可以理解preg_split()升級版的explode()

$pattern = '/[0-9]/';

$subject='bfg3456sgf789fg';

$arr = preg_split($pattern,$subject);

show($arr);

/*

Array

(

[0] => bfg

[1] =>

[2] =>

[3] =>

[4] => sgf

[5] =>

[6] =>

[7] => fg

)

*/

5 . preg_quote($str) 正則運算符轉譯

/*

* preg_quote($str) 正則運算符轉譯

* . \ + * ? [ ^ ] $ () {} = ! < > | : -

*

*/

echo '


';

$str = "qewr{asdf}[123]";

$str =preg_quote($str);

print_r($str);

/*

qewr\{asdf\}\[123\]

*/簡單總結通性:

preg_ 開頭

除preg_quote函數以外,第一個參數都是正則表達式

preg_match 表單驗證等

preg_replace 非法詞語過濾等

Python常用模塊中常用內置函數的具體介紹

Python作為計算機語言中常用的語言,它具有十分強大的功能,但是你知道Python常用模塊I的內置模塊中常用內置函數都包括哪些具體的函數嗎?以下的文章就是對Python常用模塊I的內置模塊的常用內置 ...

iOS開發中常用的數學函數

iOS開發中常用的數學函數 /*---- 常用數學公式 ----*/ //指數運算 3^2 3^3 NSLog(,)); //result 9 NSLog(,)); //result 27 //開平方 ...

實際項目開發過程中常用C語言函數的9大用法

C語言是當中最廣泛的計算機編程語言,是所有計算機編程語言的祖先,其他計算機編程語言包括當前流行的Java語言,都是用C語言實現的,C語言是編程效率最高的計算機語言,既能完成上層應用開發,也能完成底層硬 ...

Sql 中常用時間處理函數

1.Sql 中常用時間處理函數? GETDATE()? 返回當前的日期和時間 DATEPART()? 返回日期/時間的單獨部分 DATEADD()? ?返回日期中添加或減去指定的時間間隔 DATEDI ...

PHP中常用的正則表達式由哪些元素構成?

在程序開發中,我們常常要用到正則表達式,對于新手來說,很多時候知道正則表達式是怎么回事,但當真正需要使用的時候,卻不知該用什么函數,具體的修飾符也比較混亂.下面小編就為大家整理了一些php正則表達式中 ...

JavaScript 中常用的 正則表達式

這編文章我來整理了一些在 javascript 中常用的正則式希望能給大家帶來一些開發的靈感 //校驗是否全由數字組成 function isDigit(s)?{?var patrn=/^[0-9]{ ...

收集JavaScript中常用的方法函數

本文中,收集了一些比較常用的Javascript函數,希望對學習JS的朋友們有所幫助. 1. 字符串長度截取 function cutstr(str, len) { var temp, icount ...

js中常用的正則表達式

我一般對正則的使用方式如下,該方法會返回一個boolean值,然后對這個返回值來進行判斷 // 判斷是否是整數 function isInt(num) { var reg = new RegExp(& ...

【Oracle】Oracle中常用的系統函數

Oracle?SQL?提供了用于執行特定操作的專用函數.這些函數大大增強了?SQL?語言的功能.函數可以接受零個或者多個輸入參數,并返回一個輸出結果.在Oracle還可以自定義函數,關于更多信息可以查 ...

隨機推薦

&period;&sol;configure&comma;make&comma;make install的作用

這些都是典型的使用GNU的AUTOCONF和AUTOMAKE產生的程序的安裝步驟. ./configure是用來檢測你的安裝平臺的目標特征的.比如它會檢測你是不是有CC或GCC,并不是需要CC或GCC ...

TortoiseGit 連接Git服務器不用每次輸入用戶名和密碼的方法

每次git push?都要輸入用戶名和密碼. 雖然安全,但在自己電腦上每次都輸有些麻煩,如何記住用戶名和密碼呢? 試了很多方法,找到這個最簡單,親測可行. 當你配置好git后,在C盤C:\Users\ ...

Cron運行原理

from:http://blog.chinaunix.net/uid-20682147-id-4977039.html 目錄 目錄 1 1.?前言 1 2.?示例 1 3.?工作過程 2 4.?一個詭 ...

Z-Stack協議中幾個重要概念的理解

1. 原語 ??? ZigBee設備在工作時,各種不同的任務在不同的層次上執行,通過層的服務,完成所要執行的任務.每一層的服務主要完成兩種功能:根據它的下層服務要求,為上層提供相應的服務:另一咱是根據 ...

SQL Server帶游標的SQL

DECLARE test_cursor CURSOR FOR SELECT ID FROM dbo.T_BD_Restaurant WHERE id <> '0AAB2E55-79F8-4 ...

想要薪資20-30K,Python程序員認真敲代碼就夠了!

在這個年代,互聯網的飛速壯大大家有目共睹,除了表露出的公共受益,其中計算機編程者也是做出了巨大的貢獻,即使外國編程語言仍舊屬于領導者,但是在互聯網的壯大下,我們這是"地球村",國內 ...

Pandas系列(十六)- 你需要學會的騷操作

pandas有一種功能非常強大的方法,它就是accessor,可以將它理解為一種屬性接口,通過它可以獲得額外的方法.其實這樣說還是很籠統,下面我們通過代碼和實例來理解一下. pd.Series._ac ...

SoapUI測試WebService接口

Getting Started Getting started with some ad-hoc testing of a SOAP service is straight forward; se ...

centos查看系統版本信息

1.查看版本文件名稱 ll /etc/*centos* 2.顯示系統版本號 cat /etc/centos-release

總結

以上是生活随笔為你收集整理的php的正则表达式函数,php中常用的正则表达式函数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。