首頁  >  文章  >  後端開發  >  在PHP中模式修正符有哪些?是如何使用的? (附詳解)

在PHP中模式修正符有哪些?是如何使用的? (附詳解)

慕斯
慕斯原創
2021-06-09 16:48:541916瀏覽

上篇文章為大家介紹了《PHP中什麼是元字元?我們該如何使用正規表示式的元字元? (附程式碼)》,本文繼續跟大家介紹在PHP中模式修正符號有哪些?他們是如何使用的? (附詳解),有需要的朋友可以參考一下,希望對大家有幫助。

在PHP中模式修正符有哪些?是如何使用的? (附詳解)

模式修正符號有哪些:

  • #i忽略大小寫

  • ##x忽略正規中的空白
  • s使用.元字元可以符合到\n
  • 元字元(. )可以符合任一原子,除了\n之外
  • m視為多行處理,在該模式下和$可以符合\ 
  • s (大s) 加速匹配
  • U模式(必須記住)改變貪婪模式

改變貪婪模式,程式預設為貪婪的,匹配最遠的結束為止,我們可以在正則中使用* ?匹配任意字符的同事使用腓貪婪模式。

在PHP中模式修正符有哪些?是如何使用的? (附詳解)首先我們還是先定義$str = $_POST[]接收傳過來的參數,然後,我們定義正規表示式($pattern),當我們用兩個定界符定義好以後就是一個正規表示式的模式,那,此時的模式修正符應放在模式修正符的後邊。然後我們把匹配的程式碼寫上去,運行結果出現匹配成功(程式碼如下)

<?php
//进行匹配
$str = $_POST[&#39;str&#39;];
$pattern = &#39;/love/&#39; ;
$result = preg_match($pattern , $str , $match);
echo &#39; 匹配结果为: &#39;.$result;
echo &#39;<hr/>&#39; ;
if ( $result){ 
echo &#39;<font color="pink" size="5 ">匹配成功</font>&#39;;
}else{
echo &#39;<font color="red">匹配失败</font>&#39;;
}
var_dump($match);
?>

程式碼運行結果:在PHP中模式修正符有哪些?是如何使用的? (附詳解)

##如我們把輸入的字串換成大寫字母會發現結果出現匹配失敗:

在PHP中模式修正符有哪些?是如何使用的? (附詳解)

程式碼顯示結果如下:

在PHP中模式修正符有哪些?是如何使用的? (附詳解)


如果我們在模式修正符後面加入一個I之後,我們會發現我們運行程式碼的結果是匹配成功;

##

$pattern = &#39;/love/i&#39; ;
在PHP中模式修正符有哪些?是如何使用的? (附詳解)程式碼運行結果:

在PHP中模式修正符有哪些?是如何使用的? (附詳解)


#如果說我們在字串中加入空格,我們運行結果會顯示匹配出錯;

$pattern = &#39;/lo  ve/i&#39; ;
在PHP中模式修正符有哪些?是如何使用的? (附詳解)程式碼運行結果:

如果我們在模式修正符後面加入一個x之後,我們會發現我們運行程式碼的結果是匹配成功;

$pattern = &#39;/lo  ve/ix&#39; ;
在PHP中模式修正符有哪些?是如何使用的? (附詳解)程式碼運行結果:

如果我想匹配所有的東西,我們可以用一個元字元(.)這個圓點可以匹配到任意的內容

我們以程式碼為例:

$pattern = &#39;/./ix&#39; ;
在PHP中模式修正符有哪些?是如何使用的? (附詳解)程式碼運行結果:

在PHP中模式修正符有哪些?是如何使用的? (附詳解)

1在PHP中模式修正符有哪些?是如何使用的? (附詳解)

1在PHP中模式修正符有哪些?是如何使用的? (附詳解)

#如果我們想要配對到中文,我們可以在圓點後面加一個( );

$pattern = &#39;/.+/ix&#39; ;
1在PHP中模式修正符有哪些?是如何使用的? (附詳解)程式碼運行結果:

在PHP中模式修正符有哪些?是如何使用的? (附詳解)

推薦學習:《 ###PHP影片教學###》###

以上是在PHP中模式修正符有哪些?是如何使用的? (附詳解)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn