Teil von  SELFPHP   Teil von  Code Snippets / PHP / Arrays
  +++ SELFPHP CronJob-Service :: Jetzt auch als Professional-Version verfügbar! +++



:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: SELFPHP Forum ::

Fragen rund um die Themen PHP? In über 120.000 Beiträgen finden Sie sicher die passende Antwort!  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

:: Qozido ::

Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.   

 
 
Array mit regulärem Ausdruck durchsuchen





Beispielaufgabe

Es soll mittels regulärem Ausdruck in einem Array (eindimensional) gesucht werden.



Beschreibung

Die folgende Funktion durchsucht ein Array ($arHaystack) an Hand eines regulären Ausdrucks ($strPattern). Der reguläre Ausdruck muss gültig sein, sprich er muss von Delimitern umschlossen sein und gegebenenfalls müssen Modifikatoren angehängt werden. $bTarget definiert welcher Teil des Arrays durchsucht werden soll. Wird TRUE (Standard) übergeben, dann sucht die Funktion in den Array-Werten, bei FALSE in den Array-Schlüsseln. Setzt man $bReturn auf TRUE (Standard), dann enthält das zurückgegebene Array die Array-Schlüsseln, wird FALSE gesetzt, enthält es die Array-Werte. Findet die Funktion keine Übereinstimmung(en) im Array, gibt die Funktion FALSE zurück.



<?PHP
  
function arrayRegexSearch $strPattern$arHaystack,
                              
$bTarget TRUE$bReturn TRUE )
  {
    
$arResults = array ();
    foreach ( 
$arHaystack as $strKey => $strValue )
    {
      
$strHaystack $strValue;

      if ( !
$bTarget )
      {
        
$strHaystack $strKey;
      }

      if ( 
preg_match $strPattern$strHaystack ) )
      {
        if ( 
$bReturn )
        {
          
$arResults[] = $strKey;
        }
        else
        {
          
$arResults[] = $strValue;
        }
      }
    }

    if ( 
count $arResults ) )
    {
      return 
$arResults;
    }

    return 
FALSE;
  }
?>



Anwendungsbeispiel

<?PHP
  $arHaystack 
= array ( 'Damir''Renata''daniel' );

  
var_dump arrayRegexSearch '/Da/i'$arHaystackTRUEFALSE ) );
?>



Ausgabebeispiel: Quellcodeansicht

array(2) {
  [0]=>
  string(5) "Damir"
  [1]=>
  string(6) "daniel"
}






 




:: Premium-Partner ::

Webhosting/Serverlösungen


Premium-Partner MECO Systemhaus GmbH & Co. KG
Premium-Partner PSW GROUP GmbH & Co. KG
Premium-Partner BPI-Systeme
Premium-Partner Pixel X
Premium-Partner
 

:: SELFPHP Sponsoren ::


Microsoft Deutschland GmbH
twosteps.net - ...Premium-Webhosting
Sedo - Bei uns wird PHP großgeschrieben
hostfactory.ch - OptimaNet Schweiz AG
ZEND - The PHP Company
Kaspersky Labs
HighText iBusiness
SELFPHP Sponsoren
 

Qozido


© 2001-2009 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt