getRestrictions('nagvis/map/filter') as $mapFilter) { if ($mapFilter !== '') { $mapFilters = array_merge($mapFilters, array_map('trim', explode(',', $mapFilter))); } } if (! empty($mapFilters)) { $mapRegexParts = array(); foreach (array_unique($mapFilters) as $mapFilter) { $nonWildcards = array(); foreach (explode('*', $mapFilter) as $nonWildcard) { $nonWildcards[] = preg_quote($nonWildcard, '/'); } $mapRegexParts[] = implode('.*', $nonWildcards); } return '/^(?:' . implode('|', $mapRegexParts) . ')$/i'; } return null; } }