我有一个带有一些特定缩写的String。 String可以包含一个,多个或没有缩写。 然后我有一个缩写为元素的数组。
我正在寻找一个解决方案,以便在新数组中提供匹配的缩写。
例如:
$abbreviation = array('HSGE', 'DFVC');
$string = 'This is a abbreviation HSGE and here is the other DFVC";
输出应为:
$output = ([0] => HSGE [1] => DFVC);
也许这很容易,但我是新手。
答案 0 :(得分:4)
使用array_intersect的简单解决方案:
array_intersect(explode(' ',$string), $abbreviation)
答案 1 :(得分:0)
您应该使用graph[i][j]
来检索字符串中缩写的位置。
http://php.net/manual/en/function.strrpos.php
如果abreviation不在字符串中,那么strpos
将返回FALSE
所以解决方法是循环你的缩写数组并检查是否在带有strpos的字符串中使用了这种缩写。
答案 2 :(得分:0)
您可以创建缩写数组的循环foreach
元素,并使用strpos
搜索字符串中每个元素的位置,然后如果找到它,则可以将缩写添加到结果中数组array_push
。
您可以在这里找到所需内容:
http://php.net/manual/en/function.strpos.php