php 正則中的"i,m,s,x,e"分別表示什么


 i
如果設定此修正符,模式中的字符將同時匹配大小寫字母。
php <wbr>正則中的"i,m,s,x,e"分別表示什么
php <wbr>正則中的"i,m,s,x,e"分別表示什么m
php <wbr>正則中的"i,m,s,x,e"分別表示什么當設定了此修正符,“行起始”和“行結束”除了匹配整個字符串開頭和結束外,還分別匹配其中的換行符的之后和之前。
php <wbr>正則中的"i,m,s,x,e"分別表示什么
php <wbr>正則中的"i,m,s,x,e"分別表示什么s
php <wbr>正則中的"i,m,s,x,e"分別表示什么如果設定了此修正符,模式中的圓點元字符(.
)匹配所有的字符,包括換行符。沒有此設定的話,則不包括換行符。
php <wbr>正則中的"i,m,s,x,e"分別表示什么
php <wbr>正則中的"i,m,s,x,e"分別表示什么x
php <wbr>正則中的"i,m,s,x,e"分別表示什么如果設定了此修正符,模式中的空白字符除了被轉義的或在字符類中的以外完全被忽略,在未轉義的字符類之外的
 #以及下一個換行符之間的所有字符,包括兩頭,也都被忽略。
 
php <wbr>正則中的"i,m,s,x,e"分別表示什么

php <wbr>正則中的"i,m,s,x,e"分別表示什么e
php <wbr>正則中的"i,m,s,x,e"分別表示什么如果設定了此修正符,
preg_replace() 在替換字符串中對逆向引用作正常的替換,

? 在 . + 和 * 之后 表示非貪婪匹配: *、+和?限定符都是貪婪的,因為它們會盡可能多的匹配文字,只有在它們的后面加上一個?就可以實現非貪婪或最小匹配。

例如:

<?php
$string = "上飛機離開我<img border='0' alt='' src='/uploadfile/2009/0921/20090921091612567.jpg' border='0' />sdfsdf";

$su = preg_match("/ \<[ ]*img.*src[ ]*\=[ ]*[\"|\'](.+?)[\"|\'] /", $string,$match); // 匹配src=的內容
print_r($match[1]); // 輸出 /uploadfile/2009/0921/20090921091612567.jpg

$su = preg_match("/ \<[ ]*img.*src[ ]*\=[ ]*[\"|\'](.+)[\"|\'] /", $string,$match);
print_r($match[1]); // 輸出 /uploadfile/2009/0921/20090921091612567.jpg' border='
?>

php <wbr>正則中的"i,m,s,x,e"分別表示什么例子:(?i):
    (?
i)在PHP中的意思是內部修正符,i指不區分大小寫
php <wbr>正則中的"i,m,s,x,e"分別表示什么其它的修正符還有x
,m,s,U等。和我們使用的模式修正符是一樣的。
php <wbr>正則中的"i,m,s,x,e"分別表示什么區別在於它是在模式內部使用的。僅作用於(
?
i)所在的子模式內
php <wbr>正則中的"i,m,s,x,e"分別表示什么
php <wbr>正則中的"i,m,s,x,e"分別表示什么ccc(a(
?
i))bcd 匹配 cccabcd和cccAbcd
php <wbr>正則中的"i,m,s,x,e"分別表示什么而a(
?i)bc則和abc加上\i修正符是一樣的因為(?i)作用於整個模式

后向引用

   對一個正則表達式模式或部分模式兩邊添加圓括號將導致相關匹配存儲到一個臨時緩沖區中,所捕獲的每個子匹配都按照在正則表達式模式中從左至右所遇到的內容存儲。存儲子匹配的緩沖區編號從 1 開始,連續編號直至最大 99 個子表達式。每個緩沖區都可以使用 '\n' 訪問,其中 n 為一個標識特定緩沖區的一位或兩位十進制數。
   可以使用非捕獲元字符 '?:', '?=', or '?!' 來忽略對相關匹配的保存。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM