正則表達式:(?<=【)[^】]+
注:以匹配中文括號中內(nèi)容為例,如果匹配非中文括號,則需要在括號前增加轉(zhuǎn)義符
PHP實現(xiàn)示例:
<?php $strSubject = "abc【111】abc【222】abc【333】abc"; $strPattern = "/(?<=【)[^】]+/"; $arrMatches = []; preg_match_all($strPattern, $strSubject, $arrMatches); var_dump($arrMatches);
執(zhí)行結(jié)果:
~ » php mytest/test_preg.php iwaimai@bogon array(1) { [0]=> array(3) { [0]=> string(3) "111" [1]=> string(3) "222" [2]=> string(3) "333" } }
解析:
1、(?<=【)
第一個表達式是一個『非獲取匹配』,即匹配括號,但并不獲取括號;
2、[^】]+
第二個表達式中[]匹配單個字符,^】代表除了】的字符,+是限定符代表匹配前面子表達式一次或多次,即匹配除了】的連續(xù)多個字符;
組合起來即實現(xiàn)了預(yù)期效果~
總結(jié)
以上所述是小編給大家介紹的PHP實現(xiàn)正則匹配所有括號中的內(nèi)容,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對服務(wù)器之家網(wǎng)站的支持!