| |
| * Link führt ins Internet |
|

| |
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"
} |

|
|
|
|
|


|