Query: mb_ereg_replace_callback
OS: php
Section: 3
Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar
MB_EREG_REPLACE_CALLBACK(3) 1 MB_EREG_REPLACE_CALLBACK(3) mb_ereg_replace_callback - Perform a regular expresssion seach and replace with multibyte support using a callbackSYNOPSISstring mb_ereg_replace_callback (string $pattern, callable $callback, string $string, [string $option = "msr"])DESCRIPTIONScans $string for matches to $pattern, then replaces the matched text with the output of $callback function. The behavior of this function is almost identical to mb_ereg_replace(3), except for the fact that instead of $replacement parameter, one should specify a $callback.PARAMETERSo $pattern - The regular expression pattern. Multibyte characters may be used in $pattern. o $callback - A callback that will be called and passed an array of matched elements in the $subject string. The callback should return the replacement string. You'll often need the $callback function for a mb_ereg_replace_callback(3) in just one place. In this case you can use an anonymous function to declare the callback within the call to mb_ereg_replace_callback(3). By doing it this way you have all information for the call in one place and do not clutter the function namespace with a callback function's name not used anywhere else. o $string - The string being checked. o $option - Matching condition can be set by $option parameter. If i is specified for this parameter, the case will be ignored. If x is specified, white space will be ignored. If m is specified, match will be executed in multiline mode and line break will be included in '.'. If p is specified, match will be executed in POSIX mode, line break will be considered as normal character. Note that e cannot be used for mb_ereg_replace_callback(3).RETURN VALUESThe resultant string on success, or FALSE on error.NOTESNote The internal encoding or the character encoding specified by mb_regex_encoding(3) will be used as the character encoding for this function.EXAMPLESExample #1 mb_ereg_replace_callback(3) example <?php // this text was used in 2002 // we want to get this up to date for 2003 $text = "April fools day is 04/01/2002 "; $text.= "Last christmas was 12/24/2001 "; // the callback function function next_year($matches) { // as usual: $matches[0] is the complete match // $matches[1] the match for the first subpattern // enclosed in '(...)' and so on return $matches[1].($matches[2]+1); } echo mb_ereg_replace_callback( "(d{2}/d{2}/)(d{4})", "next_year", $text); ?> The above example will output: April fools day is 04/01/2003 Last christmas was 12/24/2002 Example #2 mb_ereg_replace_callback(3) using anonymous function supported in PHP 5.3.0 or later <?php // this text was used in 2002 // we want to get this up to date for 2003 $text = "April fools day is 04/01/2002 "; $text.= "Last christmas was 12/24/2001 "; echo mb_ereg_replace_callback( "(d{2}/d{2}/)(d{4})", function ($matches) { return $matches[1].($matches[2]+1); }, $text); ?>SEE ALSOmb_regex_encoding(3), mb_ereg_replace(3), Anonymous functions, information about the callback type. PHP Documentation Group MB_EREG_REPLACE_CALLBACK(3)
Related Man Pages |
---|
ereg(3) - php |
eregi(3) - php |
preg_match(3) - php |
match(1) - ultrix |
preg_match_all(3) - php |
Similar Topics in the Unix Linux Community |
---|
Why ? look this ? |
Office April fool's day pranks needed |
Extract a string from another string in UNIX |
Remove all matches containing a string until its next space |
Merry Christmas 2019 :) :) |