9.2.9 模式修正符(單個字符)2
s.php
<?php
/*
* 模式修正符號(單個字符)
*
* 1. 模式修正符號要寫在定界符號外, 放在右邊
*
* "/go*gle/i"
* 2. 模式修正符號, 一個字符就是一個功能, 可以組合使用
*
* "/go*gle/ieU"
*
* 作用:
* 模式修正符號可以修正正則表代式的解釋, 或擴充了正則表達式的功能
*
*
* i : 修正正則表達式不區分大小寫(默認是區分大小寫的)
*
* m : 修正符號修正正則表達式可以視為多行, 在使用 ^ 或 $ 這兩個符號時, 每一行滿足都可以。 (默認視為一行處理)
*
* s: 修正正則表達式中的 . 可以匹配換行符號 (默認 . 不能匹配回車符號)
*
*/
$str = "this is a te
st";
$reg = '/te.+st/s';
if(preg_match($reg, $str, $arr)) {
echo "正則 <b>{$reg}</b>, 和字符串<b>{$str}</b>匹配成功<br>";
print_r($arr);
} else {
echo "匹配失敗!<br>";
}
u.php
<?php
/*
* 模式修正符號(單個字符)
*
* 1. 模式修正符號要寫在定界符號外, 放在右邊
*
* "/go*gle/i"
* 2. 模式修正符號, 一個字符就是一個功能, 可以組合使用
*
* "/go*gle/ieU"
*
* 作用:
* 模式修正符號可以修正正則表代式的解釋, 或擴充了正則表達式的功能
*
*
* i : 修正正則表達式不區分大小寫(默認是區分大小寫的)
*
* m : 修正符號修正正則表達式可以視為多行, 在使用 ^ 或 $ 這兩個符號時, 每一行滿足都可以。 (默認視為一行處理)
*
* s: 修正正則表達式中的 . 可以匹配換行符號 (默認 . 不能匹配回車符號)
*
* x: 修正正則表達式,可以省略空白
*
* U: (.*, .+) 正則表達式比較貪婪, .*? .+?
*
*/
$str = "this <b>is</b> a test <b>Web</b> Serve";
$reg = '/\<b\>(.*?)\<\/b\>/is';
if(preg_match_all($reg, $str, $arr)) {
echo "正則 <b>{$reg}</b>, 和字符串<b>{$str}</b>匹配成功<br>";
print_r($arr);
} else {
echo "匹配失敗!<br>";
}