Всем доброго времени суток! Что-то не получается разобраться с регуляркой.... есть многострочный текст вида:
Код | grey2 has 0 calls (max unlimited) in 'ringall' strategy (0s holdtime, 0s talktime), W:0, C:0, A:0, SL:0.0% within 0s Members: Local/627@incoming-ivr/n (ringinuse enabled)[0m[0m[0m[0m ([1;32;40mNot in use[0m) has taken no calls yet Local/614@incoming-ivr/n (ringinuse enabled)[0m[0m[0m[0m ([1;32;40mNot in use[0m) has taken no calls yet No Callers
abc has 0 calls (max unlimited) in 'ringall' strategy (0s holdtime, 0s talktime), W:0, C:0, A:0, SL:0.0% within 0s Members: SIP/403 (ringinuse enabled)[0m[0m[0m[0m ([1;32;40mNot in use[0m) has taken no calls yet No Callers
hotline has 0 calls (max unlimited) in 'ringall' strategy (2s holdtime, 156s talktime), W:0, C:4, A:0, SL:0.0% within 0s Members: Local/299@incoming-ivr/n (ringinuse enabled)[0m[0m[0m[0m ([1;32;40mNot in use[0m) has taken no calls yet Local/599@incoming-ivr/n (ringinuse enabled)[0m[0m[0m[0m ([1;32;40mNot in use[0m) has taken no calls yet Local/928@incoming-ivr/n (ringinuse enabled)[0m[0m[0m[0m ([1;32;40mNot in use[0m) has taken no calls yet Local/199@incoming-ivr/n (ringinuse enabled)[0m[0m[0m[0m ([1;32;40mNot in use[0m) has taken 4 calls (last was 2631 secs ago) Local/925@incoming-ivr/n (ringinuse enabled)[0m[0m[0m[0m ([1;32;40mNot in use[0m) has taken no calls yet Local/922@incoming-ivr/n (ringinuse enabled)[0m[0m[0m[0m ([1;32;40mNot in use[0m) has taken no calls yet No Callers
|
Хочу из текста получить имя очереди и ее членов.... Делаю так:
Код | preg_match_all('/(?<QUEUE>[\w\d_]*)\s?has\s?\d{1,3}\s?calls.*?(?:Members:.*?Local\/((?<MEMBER>\d{1,5})).*?yet.*?Callers)/ims', $queue_data, $matches,PREG_SET_ORDER|PREG_OFFSET_CAPTURE);
|
В результате получаю имея очереди и только первого ее члена.... как можно поправить чтобы получало всех ? версия php 5.4
на выходе хотелось бы получить массив вида:
Код | Array ( [0] => Array ( [0] => Array ( [0] => grey2 has 0 calls (max unlimited) in 'ringall' strategy (0s holdtime, 0s talktime), W:0, C:0, A:0, SL:0.0% within 0s Members: Local/627 [1] => 0 )
[1] => Array ( [0] => grey2 [1] => 0 )
[2] => Array ( [0] => 627 [1] => 142 ) [3] => Array ( [0] => 614 [1] => 152 ) )
|
|