【发布时间】:2012-07-10 03:57:48
【问题描述】:
例如:
主数组为:array(0 => 'A', 1 => 'A', 2 => 'B', 3 => 'B', 4 => 'B');
模式是:array('A', 'B');
预期答案:array( array(0, 2), array(1, 3) )
再举一个例子:
主数组array(0 => 'F', 5 => 'G', 78 => 'R', 2 => 'D');
模式array('G', 'R', 'F');
预期答案:array(array(5, 78, 0))
如何在数组中找到所有出现的模式?
【问题讨论】:
-
array(0, 2)和array(1, 3)是什么意思? -
@Rocket 我认为将其视为 array( 'A' => array( 0, 2 ), 'B' => array( 1, 3 ) ) 更有意义跨度>
-
@Rocket 它是模式匹配元素的 ID。例如有两个匹配的对 -> (0,2) (1,3)
-
@Yekver:所以对于
array(0, 2)。0是模式数组中A的索引。而2是主数组中As 的数量? -
@Rocket:不,
array(0, 2)0是A在主数组中的索引,2是B在主数组中的索引跨度>