replace_sections
NAME
replace_sections(): search and replace text appearing between section start/endTYPE
FunctionDESCRIPTION
Replace sections in a text, identified by start/end tokens, with a given replacement string. Back-referencing supported.
This function allows to replace one or more occurrences of text with a replacement text. The replaced text is such that appears between a section start and section end texts. The section start/end texts themselves are stripped during the replacement process.
The replacement text may be constant, but may also use the '\\0' back-reference to indicate the original text.
SYNOPSIS
replace_sections( txt TEXT CHARSET utf8, section_start TEXT charset utf8, section_end TEXT charset utf8, replacement_text TEXT CHARSET utf8 ) RETURNS TEXT CHARSET utf8 NO SQL
Input:
- txt: text to manipulate
- section_start: text identifying beginning of section
- section_end: text identifying end of section
- replacement_text: text to inject in place of sections. May contain the special '\\0' back-reference .
EXAMPLES
Strip anything between braces:
mysql> select replace_sections('Me (myself) I', '(', ')', '') as result; +--------+ | result | +--------+ | Me I | +--------+
Remove all HTML tags, assume "<" & ">" do not appear throughout text:
mysql> select replace_sections('The <b>quick</b> brown <b>fox</b>', '<', '>', '') as result; +---------------------+ | result | +---------------------+ | The quick brown fox | +---------------------+
Remove only <b> HTML tags, retain enclosed text:
mysql> select replace_sections( 'The <b>quick</b> <span>brown</span> <b>fox</b>', '<b>', '</b>', '\\0') as result; +----------------------------------+ | result | +----------------------------------+ | The quick <span>brown</span> fox | +----------------------------------+
Convert b tags to span tags, retain enclosed text:
mysql> select replace_sections( 'The <b>quick</b> brown <b>fox</b>', '<b>', '</b>', '<span>\\0</span>') as result; +-----------------------------------------------+ | result | +-----------------------------------------------+ | The <span>quick</span> brown <span>fox</span> | +-----------------------------------------------+