Рассмотрим следующий пример:Получить позицию всех матчей в группе
$target = 'Xa,a,aX';
$pattern = '/X((a),?)*X/';
$matches = array();
preg_match_all($pattern,$target,$matches,PREG_OFFSET_CAPTURE|PREG_PATTERN_ORDER);
var_dump($matches);
Что она делает возвращается только последнее «а» в серии, но то, что мне нужно, это все «в.
В частности, мне нужно положение ALLКАЖДОЙ ИЗ «а внутри строки отдельно, таким образом PREG_OFFSET_CAPTURE.
пример является гораздо более сложным, см смежный вопрос: pattern matching an array, not their elements per se
Благодарности
Если это описание не является хорошим представлением вашей реальной проблемы, поэтому начать этот новый пост вообще? –
Это упрощенная, это еще одна «проблема» моей сложной проблемы, и ее можно рассматривать как отдельную проблему с ее собственным решением. – Flavius
Может ли цель содержать несколько списков a, например: 'abcdXa, a, a, aXefghiXa, a, a, a, a, a, a, aX'? Если да, вы хотите, чтобы в этом случае были два отдельных массива: по одному для каждого списка a или один объединенный массив, содержащий индексы всех a, независимо от того, откуда они пришли? –