PHP - RecursiveRegexIterator
<?php
// RecursiveRegexIterator
$data = array(
array(
'EC2-CHOPIN01',
'EC2-CHOPIN02',
'EC2-CHOPIN03',
),
array(
'EC2-CHOPIN04',
'EC2-MOZART01',
'EC2-MOZART02',
),
array(
'EC2-BACH01',
'EC2-BACH02',
'EC2-CHOPIN05',
),
);
$iterator = new RecursiveRegexIterator(new RecursiveArrayIterator($data), "/(CHOPIN)/", RegexIterator::ALL_MATCHES);
foreach ($iterator->getInnerIterator() as $value) {
foreach ($iterator->getChildren() as $value) {
echo $value.PHP_EOL;
}
}
// Output:
/*
EC2-CHOPIN01
EC2-CHOPIN02
EC2-CHOPIN03
EC2-CHOPIN04
EC2-CHOPIN05
*/