Захват неопределенного количества значений с разделителями внутри заполнителя в квадратных скобках в строке.Php

Кемеровские программисты php общаются здесь
Anonymous
Захват неопределенного количества значений с разделителями внутри заполнителя в квадратных скобках в строке.

Сообщение Anonymous »

У меня есть следующее регулярное выражение:

Код: Выделить всё

\[([^ -\]]+)( - ([^ -\]]+))+\]
Это успешно соответствует следующему:

Код: Выделить всё

[abc - def - ghi - jkl]
НО совпадение:

Код: Выделить всё

Array
(
[0] => [abc - def - ghi - jkl]
[1] => abc
[2] =>  - jkl
[3] => jkl
)
Мне нужно что-то вроде этого:

Код: Выделить всё

Array
(
[0] => [abc - def - ghi - jkl]
[1] => abc
[2] =>  - def
[3] => def
[4] =>  - ghi
[5] => ghi
[6] =>  - jkl
[7] => jkl
)
Я могу сделать это на C#, просматривая группы «захваты». Как я могу сделать это в PHP?

Подробнее здесь: https://stackoverflow.com/questions/564 ... -braced-pl

Вернуться в «Php»