Preg replace callback example

Regular expressions can be very powerful, this example shows how to use the preg_replace_callback function.
// Define a dummy text, for testing... $Text = "Title: Hello world!\n"; $Text .= "Author: Jonas\n"; $Text .= "This is a example message!\n\n"; $Text .= "Title: Entry 2\n"; $Text .= "Author: Sonja\n"; $Text .= "Hello world, what's up!\n"; // This function will replace specific matches // into a new form function RewriteText($Match){ // Entire matched section: // --> /.../ $EntireSection = $Match[0]; // --> "\nTitle: Hello world!" // Key // --> ([a-z0-9]+) $Key = $Match[1]; // --> "Title" // Value // --> ([^\n\r]+) $Value = $Match[2]; // --> "Hello world!" // Add some bold (<b>) tags to around the key to return '<b>' . $Key . '</b>: ' . $Value; } // The regular expression will extract and pass all "key: value" pairs to // the "RewriteText" function that is definied above $NewText = preg_replace_callback('/[\r\n]([a-z0-9]+): ([^\n\r]+)/i', "RewriteText", $Text); // Print the new modified text print $NewText;

Url: http://www.jonasjohn.de/snippets/php/preg-replace-callback.htm

Language: PHP | User: ShareMySnippets | Created: Oct 16, 2013