国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

PHP學習之深入理解正則反引用和轉義符

2024-09-04 11:47:40
字體:
來源:轉載
供稿:網友

本篇文章主要講述的是正則表達式的反引用和轉義符的原理以及應用,具有一定的參考價值,感興趣的朋友可以了解一下。

一、正則反引用

正則表達式,在PHP中我經常能用到。用的場景也很多,比如,正則匹配字符串,判斷字符是否存在,正則替換等等。

例子一:

  1. $string = 'abcd'
  2.  
  3. $re = preg_replace('/(a)/''/1A',$string);echo $re;//結果 
  4.  
  5. // aAbcd 

這里用到了正則的捕獲組概念和反引用。

解釋:

捕獲組我們可以從第一個`(` 向后數, 第一個括號里面匹配到的內容,我們可以用 /1 來引用,為了看的明顯,特意拼接了 `A` ,其實我們還可以用 $+數字來表示第幾個捕獲組。 這里可以用$1,效果和/1一樣。

例子二:

  1. $string = 'abcd'
  2.  
  3. $re = preg_replace('/(a)/''$1B',$string); 
  4.  
  5. echo $re
  6.  
  7. //結果 
  8.  
  9. //aBbcd 

二、轉義符

什么是轉義符?

在PHP中我們用 `/` 來轉譯一些特殊的字符。

例子三:

  1. $string = 'abcd'
  2.  
  3. $re = preg_replace('/(a)/''/1B',$string); 
  4.  
  5. echo $re;//結果 
  6.  
  7. //aBbcd 

解釋: 這里的 /1 把是作為捕獲組的反引用。

例子四:

  1. $string = 'abcd'
  2.  
  3. $re = preg_replace('/(a)/''//1B',$string); 
  4.  
  5. echo $re;//結果 
  6.  
  7. //aBcd 

解釋:這里的` //1 `,第一個`/`,轉譯了第二個`/`, 那么就成了 `/1B` , 其實效果和例子三的 `/1` 是一樣的。

例子五:

  1. $string = 'abcd'
  2.  
  3. $re = preg_replace('/(a)/''///1B',$string); 
  4.  
  5. echo $re
  6.  
  7. //結果 
  8.  
  9. ///1Bbcd 

解釋:這里的`///1`,第一個`/`,轉譯了第二個`/`,那么就剩下了`//1`,`//` 輸出 `/`,最后,就剩下 `1`了。

三、總結

1、PHP正則中的反引用,/1 和 $1 效果是一樣的,我們都可以拿來用。

2、PHP正則中的轉義符,當遇到多個`/` 的時候,我們可以先"去掉" 一個,然后,在去匹配。這樣就好理解啦。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 凤台县| 无棣县| 都昌县| 万荣县| 越西县| 友谊县| 巩义市| 文昌市| 宝丰县| 宁陕县| 嘉禾县| 北宁市| 旬邑县| 阳高县| 马关县| 河西区| 宜兰县| 建德市| 绩溪县| 观塘区| 阿拉善左旗| 彝良县| 石林| 合江县| 上饶县| 海林市| 沙洋县| 江津市| 乐至县| 修文县| 安化县| 石屏县| 桐庐县| 电白县| 岳西县| 土默特左旗| 义马市| 伽师县| 慈利县| 连平县| 重庆市|