:: 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!
:: Qozido ::
Die Bilderverwaltung mit Logbuch für
Taucher und Schnorchler.
|
|
Werte oder Schlüssel eines Array mit regulärem Ausdruck ersetzen |
Beispielaufgabe
Es sollen die Schlüssel oder Werte eines Array mittels regulärer Ausdrücke gesucht und ersetzt werden.
Beschreibung
Die folgende Funktion durchläuft in der FOREACH-Schleife das übergebene Array ($arDestination). Ist $bTarget auf TRUE gesetzt (Standard), dann wird in den Array-Werten nach $strSearch (muss ein gültiger regulärer Ausdruck sein) gesucht und ersetzt. Hat $bTarget den Wert FALSE, dann wird das Suchen und Ersetzen in den Array-Schlüsseln vorgenommen. Das modifizierte Array wird von der Funktion zurückgegeben.
<?PHP
function arrayReplaceRegex ( $strSearch, $strReplace,
$arDestination, $bTarget = TRUE )
{
$arModified = array ();
foreach ( $arDestination as $strKey => $strValue )
{
if ( $bTarget ) // In Array-Werten suchen und ersetzen.
{
$strValue = preg_replace ( $strSearch, $strReplace, $strValue );
}
else // In Array-Schluesseln suchen und ersetzen.
{
$strKey = preg_replace ( $strSearch, $strReplace, $strKey );
}
$arModified[$strKey] = $strValue;
}
return $arModified;
}
?>
|
Anwendungsbeispiel
<?PHP
$strSearch = '/key([0-4])/i';
$strReplace = 'newKey$1';
$arDestination = array ( 'key0' => 'value0',
'key1' => 'value1',
'key2' => 'value2',
'key3' => 'value3',
'key4' => 'value4' );
var_dump ( arrayReplaceRegex ( $strSearch, $strReplace,
$arDestination, FALSE ) );
?>
|
Ausgabebeispiel: Quellcodeansicht
array(5) {
["newKey0"]=>
string(6) "value0"
["newKey1"]=>
string(6) "value1"
["newKey2"]=>
string(6) "value2"
["newKey3"]=>
string(6) "value3"
["newKey4"]=>
string(6) "value4"
} |
|
|
|
|
|
|