導航:首頁 > 編程語言 > php正則中括弧

php正則中括弧

發布時間:2023-12-06 23:40:44

『壹』 /^(0|[1-9]\d*)([.]5)$/ 在php正則中是什麼意思

這個正則:匹配非負整數和非負整數加上0.5(即:xxx.5);

鑒於你給這么多分,詳細來講講哈:
^ 匹配開頭,$匹配結尾,意味著匹配的字元串,必須最多隻能是數字和".5"組成,不能包含其他字元。
()是分組,| 是或者的意思,\d*這個表示0-9,第一個括弧裡面的意思是,字元串為0,或者1-9裡面的任意數字,加上0-9組成的任意位數的數字,即一個正整數。

第二個括弧,[.],這裡面只有1個'.',等價於'\.',即小數點;後面的5就是數字5;最後加個問號,代表後面的".5"是可選的,可以不要。

總結:上面的正則能匹配:0,1,2,3,0.5,1.5,999,999.5這些類型的數字字元串。

有不明白的,歡迎繼續追問。

『貳』 如何用php正則表達式取出「字元」間的字元

PHP使用正則表達式提取字元串中尖括弧<>、小括弧()、中括弧[]、大括弧{}中的字元示例,需要的朋友可以參考下
復制代碼 代碼如下:
$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不支持將字元換成括弧。
否則的話可以將環視給嵌套進去,就可以循環匹配了。
PS2:環視:(?!) (?=) (?<!) (?<=)
有小於號的在右側匹配,沒有的在左側匹配。感嘆號表示不等,等於號表示相等。
PS3:都過了驗證器的驗證,驗證器見參考資料。

『叄』 PHP正則表達式提取字元串中小括弧中的數字

<?php

$str = "abcd(ab)(1),efg(10),hijk(lmn)(5)"; //可以設置成任意字元串
preg_match_all("|(.*)[(](.*)[)](.*)|isU",$str,$str_ary);
$total = 0;
foreach( $str_ary[2] as $value)
$total += intval($value);
echo $total;
?>

『肆』 PHP正則表達式提取字元串中尖括弧<>、小括弧()、中括弧[]、大括弧{}中的字元

1、
function f1($str)
{
$result = array();
preg_match_all("/^(.*)(?:<)/i",$str, $result);
return $result[1][0];
}
2、
function f2($str)
{
$result = array();
preg_match_all("/(?:<)(.*)(?:>)/i",$str, $result);
return $result[1][0];
}
3、
function f3($str)
{
$result = array();
preg_match_all("/(?:\()(.*)(?:\))/i",$str, $result);
return $result[1][0];
}
4、
function f4($str)
{
$result = array();
preg_match_all("/(?:\[)(.*)(?:\])/i",$str, $result);
return $result[1][0];
}
5、
function f5($str)
{
$result = array();
preg_match_all("/(?:\{)(.*)(?:\})/i",$str, $result);
return $result[1][0];
}

PS: (?:字元) 表示不捕獲這個字元。貌似PHP不支持將字元換成括弧。
否則的話可以將環視給嵌套進去,就可以循環匹配了。
PS2:環視:(?!) (?=) (?<!) (?<=)
有小於號的在右側匹配,沒有的在左側匹配。感嘆號表示不等,等於號表示相等。
PS3:都過了驗證器的驗證,驗證器見參考資料。

閱讀全文

與php正則中括弧相關的資料

熱點內容
解壓故事校園戀愛又煩惱 瀏覽:555
冰箱壓縮機放多久能啟動 瀏覽:171
軟體演算法發明專利 瀏覽:987
旁氏演算法 瀏覽:765
程序員那麼可愛電視劇免費觀看極速版 瀏覽:747
程序員那麼可愛陸漓孩子保住了嗎 瀏覽:564
如何獲取伺服器dns秒解 瀏覽:663
如何破解大黃蜂的加密文件 瀏覽:11
新概念英語第三冊pdf 瀏覽:401
分項詳細估演算法步驟 瀏覽:436
ipad桌面文件夾放大 瀏覽:891
我的世界基岩版怎麼進國際伺服器 瀏覽:516
福州醫院有沒有解壓艙 瀏覽:470
帶pwm的51單片機 瀏覽:917
ace程序員指南源碼 瀏覽:414
哪個app可以分36期還款 瀏覽:244
為什麼安卓軟體平台那麼多 瀏覽:288
如果把伺服器切斷了怎麼辦 瀏覽:19
app建立網站需要什麼技術 瀏覽:691
迷你世界教你開雲伺服器 瀏覽:562