我有一个字符串:
$string='Di Cioccio v Official Trustee in Bankruptcy (as Trustee of the Bankrupt Estate of Di Cioccio) (FCAFC) - bankruptcy - shares were after-acquired property which vested in Official Trustee (I B C G)';
我正在使用preg_match()函数来获取括号内的值:
preg_match('#\((.*?)\)#', $string, $match);
然而,这里的问题是" echo $ match [0]"将仅显示字符串中的第一个匹配项。
我想得到最后一场比赛即。 " I B C G"
首先想到的是从字符串的末尾搜索。但是我该怎么做呢?
答案 0 :(得分:4)
如果您想查找preg_match
的所有匹配项,那么我可以向您展示preg_match_all()
吗?
它与其他函数的语法基本相同,但会明确地找到字符串中的所有匹配项而不是第一项。在那之后,只需echo end($match);
来获得最后一个。
答案 1 :(得分:0)
在@xathien代码的帮助下,我对此问题进行了排序,代码如下:
$string='Di Cioccio v Official Trustee in Bankruptcy (as Trustee of the Bankrupt Estate of Di Cioccio) (FCAFC) - bankruptcy - shares were after-acquired property which vested in Official Trustee (I B C G)';
preg_match_all('#\((.*?)\)#', $string, $match);
echo end($match[1]);
显示器: I B C G