REGEXP_LIKE
The REGEXP_LIKE can be used in where clause to filter or search for patterns 
in strings as shown in example below.  Using regexp_like, all names that 
have the letter "ha" or those ending in "ie" or "y" are being searched.  For
plain search of all names starting with "s", REGEXP_LIKE(fname, 's') can be 
used.
REGEXP_LIKE simplifies the search with a single condition in comparison to 
LIKE, which would have used three separate conditions in this search.


WITH q_t as (
 SELECT 'Steven'   fname FROM DUAL UNION 
 SELECT 'Stanley'  fname FROM DUAL UNION
 SELECT 'Suhas'    fname FROM DUAL UNION
 SELECT 'Keshav'   fname FROM DUAL UNION
 SELECT 'Stephnie' fname FROM DUAL UNION
 SELECT 'Stephen'  fname FROM DUAL
)
SELECT
  fname first_name
FROM q_t
WHERE REGEXP_LIKE(fname,'ha|ie$|y$')
;



REGEXP_LIKE(fname,'ha|ie$|y$') Analysis
--Search for _ with 6-digits (_000000)

WITH q_tab AS (
SELECT 'AA_201301' ref_idx FROM DUAL UNION
SELECT 'AX_2013XX' ref_idx FROM DUAL UNION
SELECT 'AA_201302' ref_idx FROM DUAL UNION
SELECT 'AB_201401' ref_idx FROM DUAL
)
SELECT  ref_idx
FROM q_tab
WHERE  REGEXP_LIKE(ref_idx,'\_\{6}$');

-- Search for IP Address


Regular Expression:   Date validation   Replace   Substr
Oracle 11g:   Count
SQL   Functions

Oracle registered trademark of Oracle Corporation.

Last Revised On: March 05th, 2014

  55799