我有一行数字作为字符串:
$numbers = x, 5, 7, x, 9, 4, x, 3, 9, 5, x, ...
现在我想计算x.之间的"持续时间"
"x"出现:
2x times after [2] numbers
1x times after [3] numbers
我只是搞不清楚,php中的哪种方法是解决这个问题的最佳方法。
谢谢!
如果数字总是0-9,则可以删除逗号和空格,并使用strpos查找x的位置。不需要爆炸。
$numbers = 'x, 5, 7, x, 9, 4, x, 3, 9, 5, x';
$string = str_replace(', ', '', $numbers);
$index = 0;
$previousPosition = 0;
$positionDifferences = array();
while($index < strlen($string)){
$index = strpos($string, 'x', $index);
$diff = $index - $previousPosition;
$positionDifferences[] = $diff;
$index++;
$previousPosition = $index;
}
现在CCD_ 1将保存一个数组,该数组具有"x"出现之间的所有差异。在本例中:Array ( [0] => 0 [1] => 2 [2] => 2 [3] => 3 )