This is an article on Oracle and using of regular expressions. Oracle has several regexp functions. Each will be described with an example below.
If you have access to existing Oracle database you can skip to the next paragraph.
If you don’t have Oracle database installed already, please follow these steps:
Basically they work in exactly same way as other Oracle methods.
source - source string.
regexp - regular expression.
position - position of the character in the source string at which the match should start.
occurrence - specifies witch match to get from source string.
replacement - in REGEXP_REPLACE specifies what is the replacement for matched regexp in source string. If omitted, matching regexp value will be deleted.
return_option - in REGEXP_INSTR: set to 0 to get position of first character in match, set to 1 to get position of first character after the match.
mode - is a string of up to three (from four: i, c, n, m) characters.
REGEXP_LIKE(source, regexp, modes*)
SELECT 'true' FROM dual WHERE REGEXP_LIKE('Hello world', 'l{1,2}');
REGEXP_SUBSTR(source, regexp, position*, occurrence*, modes*)
SELECT REGEXP_SUBSTR('Hello World!', 'W([a-z]+)') FROM dual;
REGEXP_REPLACE(source, regexp, replacement*, position*, occurrence*, modes*)
SELECT REGEXP_REPLACE('Hello World!', 'W([a-z]+)') FROM dual;
REGEXP_INSTR(source, regexp, position*, occurrence*, return_option*, modes*)
SELECT REGEXP_INSTR('Hello World!', '([A-Z])', 1, 2, 0, 'c') FROM dual;
REGEXP_COUNT(source, regexp, position*, mode*) **
* optional parameter
** not available in Oracle 10g Express Edition
Thanks for all your comments.