Replace regular expression with multibyte support

- « mb_ereg_replace_callback

- mb_ereg_search_getpos »

- PHP Manual
- Multibyte String Functions
- Replace regular expression with multibyte support

# mb_ereg_replace

(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)

mb_ereg_replace — Replace regular expression with multibyte support

### Description

mb_ereg_replace(
string `$pattern`,
string `$replacement`,
string `$string`,
?string `$options` = `null`
): string|false|null

Scans `string` for matches to `pattern`, then replaces the matched text with `replacement`

### Parameters

`pattern`

  The regular expression pattern.

  Multibyte characters may be used in `pattern`.

`replacement`

  The replacement text.

`string`

  The string being checked.

`options`
  The search option. See mb_regex_set_options() for explanation.

### Return Values

The resultant string on success, or `false` on error. If `string` is not valid for the current encoding, `null` is returned.

### Changelog

Version | Description
--- | ---
8.0.0 | `options` is nullable now.
7.1.0 | The function checks whether `string` is valid for the current encoding.
7.1.0 | The `e` modifier has been deprecated.

### Notes

> Note:

> The internal encoding or the character encoding specified by mb_regex_encoding() will be used as the character encoding for this function.

Warning

Never use the `e` modifier when working on untrusted input. No automatic escaping will happen (as known from preg_replace()). Not taking care of this will most likely create remote code execution vulnerabilities in your application.

### See Also

- mb_regex_encoding() - Set/Get character encoding for multibyte regex
- mb_eregi_replace() - Replace regular expression with multibyte support ignoring case