|
復制代碼 代碼如下:
$str="你好<我>(愛)[北京]{天安門}";
echo f1($str); //返回你好
echo f2($str); //返回我
echo f3($str); //返回愛
echo f4($str); //返回北京
echo f5($str); //返回天安門
function f1($str)
{
$result = array();
preg_match_all("/^(.*)(?:<)/i",$str, $result);
return $result[1][0];
}
function f2($str)
{
$result = array();
preg_match_all("/(?:<)(.*)(?:>)/i",$str, $result);
return $result[1][0];
}
function f3($str)
{
$result = array();
preg_match_all("/(?:/()(.*)(?:/))/i",$str, $result);
return $result[1][0];
}
function f4($str)
{
$result = array();
preg_match_all("/(?:/[)(.*)(?:/])/i",$str, $result);
return $result[1][0];
}
function f5($str)
{
$result = array();
preg_match_all("/(?:/{)(.*)(?:/})/i",$str, $result);
return $result[1][0];
}
PS: (?:字符) 表示不捕獲這個字符。貌似php不支持將字符換成括號。
否則的話可以將環(huán)視給嵌套進去,就可以循環(huán)匹配了。
PS2:環(huán)視:(?!) (?=) (?<!) (?<=)
有小于號的在右側匹配,沒有的在左側匹配。感嘆號表示不等,等于號表示相等。
PS3:都過了驗證器的驗證,驗證器見參考資料。
php技術:php使用正則表達式提取字符串中尖括號、小括號、中括號、大括號中的字符串,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。