亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》
  • 首頁 > 
  • 教程 > 
  • 開發技術 > 
  • php怎么用正則表達式提取字符串中尖括號、小括號、中括號、大括號中的字符串

php怎么用正則表達式提取字符串中尖括號、小括號、中括號、大括號中的字符串

發布時間:2021-07-02 16:09:34 來源:億速云 閱讀:521 作者:chen 欄目:開發技術

這篇文章主要介紹“php怎么用正則表達式提取字符串中尖括號、小括號、中括號、大括號中的字符串”,在日常操作中,相信很多人在php怎么用正則表達式提取字符串中尖括號、小括號、中括號、大括號中的字符串問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”php怎么用正則表達式提取字符串中尖括號、小括號、中括號、大括號中的字符串”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

一、小括號()、中括號[]、大括號的區別

 1>. 小括號():匹配小括號內的字符串,可以是一個,也可以是多個,常跟“|”(或)符號搭配使用,是多選結構的

  示例1:string name = "way2014"; regex:(way|zgw) result:結果是可以匹配出way的,因為是多選結構,小括號是匹配字符串的

  示例2:string text = "123456789"; regex:(0-9) result:結果是什么都匹配不到的,它只匹配字符串"0-9"而不是匹配數字, [0-9]這個字符組才是匹配0-9的數字

 2>.中括號[]:匹配字符組內的字符,比如咱們常用的[0-9a-zA-Z.*?!]等,在[]內的字符都是字符,不是元字符,比如“0-9”、“a-z”這中間的“-”就是連接符號,表示范圍的元字符,如果寫成[-!?*(]這樣的話,就是普通字符

  示例1: string text = "1234567890"; regex:[0-9] result:結果是可以匹配出字符串text內的任意數字了,像上邊的【或符號“|”在字符組內就是一個普通字符】

  示例2:string text = "a|e|s|v"; regex:[a|e|s] result:結果就是匹配字符a、e、|三個字符,這個跟(a|e|s)有區別的,區別就是(a|e|s)匹配的是a、e、s三個字符的隨意一個,三個中的任意一個,這是的|是元字符

 3>.大括號{}:匹配次數,匹配在它之前表達式匹配出來的元素出現的次數,{n}出現n次、{n,}匹配最少出現n次、{n,m}匹配最少出現n次,最多出現m次

更多的可以參考這篇文章:https://www.jb51.net/article/141294.htm

測試代碼

$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:都過了驗證器的驗證,驗證器見參考資料。

PS:這里再為大家提供2款非常方便的正則表達式工具供大家參考使用:

JavaScript正則表達式在線測試工具:
http://tools.jb51.net/regex/javascript

正則表達式在線生成工具:
http://tools.jb51.net/regex/create_reg

到此,關于“php怎么用正則表達式提取字符串中尖括號、小括號、中括號、大括號中的字符串”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

康乐县| 凤庆县| 年辖:市辖区| 仪征市| 秦安县| 香格里拉县| 乌海市| 龙胜| 宜川县| 修文县| 长沙县| 五大连池市| 中卫市| 天台县| 临洮县| 西乌珠穆沁旗| 阿拉善盟| 兴业县| 罗甸县| 治多县| 满洲里市| 兰考县| 阳东县| 巫溪县| 浪卡子县| 报价| 镇巴县| 深圳市| 万安县| 枞阳县| 历史| 安顺市| 舞阳县| 福州市| 阿克陶县| 陇西县| 桐乡市| 托克逊县| 翁源县| 喀喇| 获嘉县|