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

| |
Schlagwort innerhalb eines Strings farblich hervorheben
|
Beispielaufgabe
Das in einem String gefundene Schlagwort soll (oder die gefundenen Schlagworte sollen) farblich hervorgehoben werden. Die Farbe muss frei definierbar sein und die Groß-/Kleinschreibung muss beachtet werden, dies sollte aber gegebenenfalls abschaltbar sein.
Beschreibung
Die Funktion "highlightPhrase" sucht im übergebenen String ($strHaystack) das gewünschte Schlagwort ($strNeedle) und ersetzt es durch das per HTML/CSS formatierte Schlagwort. Wird im dritten Argument keine benutzerdefinierte Farbe (als HEX-Code, ohne das Präfix "#") angegeben, dann wird Rot (#ff0000) als Standardfarbe verwendet. Der optionale letzte Parameter steht Standardgemäß auf FALSE, das bedeutet, dass die Funktion auch die Groß- und Kleinschreibung beachtet. Soll dies nicht erfolgen, muss das letzte Argument auf TRUE gesetzt werden.
<?PHP function highlightPhrase ( $strHaystack, $strNeedle, $strColor = '', $bCase = FALSE ) { if ( empty ( $strColor ) ) { // Standardfarbe: Rot $strColor = 'ff0000'; }
$strModifier = ''; if ( $bCase ) { // Modifikator "i": Groß- und Kleinschreibung ignorieren. $strModifier = 'i'; }
$strQuotedNeedle = preg_quote ( $strNeedle, '/' );
$strPattern = '/' . $strQuotedNeedle . '/' . $strModifier; $strReplacement = '<span style="color: #' . $strColor . ';">$0</span>';
return preg_replace ( $strPattern, $strReplacement, $strHaystack ); } ?>
|
Anwendungsbeispiel
<?PHP $strHaystack = 'Das in einem String gefundene Schlagwort soll (oder ' . 'die gefundenen Schlagworte sollen) farblich ' . 'hervorgehoben werden. Die Farbe muss frei definierbar ' . 'sein und die Groß-/Kleinschreibung muss beachtet werden' . ', dies sollte aber gegebenenfalls abschaltbar sein.';
$strNeedle = 'Groß-/Kleinschreibung';
print ( highlightPhrase ( $strHaystack, $strNeedle ) ); ?>
|
Ausgabebeispiel: Browseransicht
| Das in einem String gefundene Schlagwort soll (oder die gefundenen Schlagworte sollen) farblich hervorgehoben werden. Die Farbe muss frei definierbar sein und die Groß-/Kleinschreibung muss beachtet werden, dies sollte aber gegebenenfalls abschaltbar sein. |

|
|
|
|
|


|