REGEXP_INSTR Oracle SQL Examples | REGEXP_INSTR in Oracle

REGEXP_INSTR in Oracle :

In my previous article, I have given the idea about different Regular Expressions. These kind of regular expressions are used for validation in SQL and PL SQL. In this article, I will try to explain about another regular expression function, which is REGEXP_INSTR, which is used to find the position of the pattern of specific string. Regular expressions are patterns used to match character combinations in strings.This post focuses on the  REGEXP_INSTR in Oracle function and explains how to use it.

Syntax :

REGEXP_INSTR( string, pattern [, start_position [, nth_appearance [, return_option [, match_parameter [, sub_expression ] ] ] ] ] );

The regexp_instr function is a very powerful to extract patterns from inside a string. The following match patterns are very useful to check the position of the string.

1.String:

String is any string in which user wants to find out the specific position of the pattern.

2.Pattern:

Pattern is any string pattern, which is used as regular expression.
3. Position:

Position is any number, which is used as the beginning of the string .If the position value is zero then the function will start from the string position 0.If user gives any position other than zero then the starting point of function is that number and the execution starts with that specific character position.

4.Match parameters:

Match parameters are nothing but the parameters used to modify the matching behavior of given string.

Match parameters:

 i – i  parameter is most important parameter which is used to introduce case-insensitivity of the given         string.
c – c parameter is used to keep the case of string as it is.
n – to make the dot (.) match new lines as well
m – to make ^ and $ match beginning and end of a line in a multi-line string

These are above some important parameters of REGEXP_INSTR function. Let us check some important examples of REGEXP_INSTR function.

 REGEXP_INSTR Oracle SQL Examples :

1.Finding position of the character in the string :

The REGEXP_INSTR in Oracle function is used to find the position of the character in the string.I will use the match parameter as c to check the case sensitiveness of given string or given character.

Query:

SELECT REGEXP_INSTR (‘Oracle is best database programming language language ‘, ‘o’, 1, 1, 0, ‘c’) regexp_instr FROM dual;

Output:

REGEXP_INSTR

———————-

27

 

 

2.Finding position of the string:

The REGEXP_INSTR in Oracle function is used to find the position of specific string occurances.It is used to find the position of character or series of parameter.

Query :

SELECT REGEXP_INSTR (‘Oracle is best database programming language language ‘, ‘language’, 1, 1, 0, ‘i’) regexp_instr FROM dual;

Output:

REGEXP_INSTR

———————-

37

The above statement will calculate the position of the string ‘language’ .Let us change the option and position from 0 to 1 and check the position of the string named language. The REGEXP_INSTR in Oracle function is used to calculate the position of language after the first occurrence.

Query:

SELECT REGEXP_INSTR (‘Oracle is best database programming language and language ‘, ‘language’, 1, 1, 1, ‘i’) regexp_instr FROM dual;

Output:

REGEXP_INSTR

———————-

45

3.Find out the digits from the string :

The ‘\d’ is useful option, which is used to find out the digit position from the given string. Always remember that this will fetch the position of the first digit in the given string.

Query:

SELECT REGEXP_INSTR (‘Oracle is best database programa11 ming language 1 language ‘,’\d’,’1′) regexp_instr FROM dual;

Output:

REGEXP_INSTR

———————-

33

4.Find out the position of specific  with using OR(|) operator:

User can find out the position of vowels in given string.User needs to use the pipe operator to find out the position of the specific vowel.

Query :

SELECT REGEXP_INSTR (‘Oracle is best database programa11 ming language 1 language ‘,’a|e|i|o|u’) regexp_instr FROM dual;

Output:

REGEXP_INSTR

———————-

3

The above query will find the position of a or e or i or o or u.We are not using match parameter i so the above query will fetch the result as 3.

5.Find out position of vowel :

User can find out the position of the vowel using following query

Query:

SELECT REGEXP_INSTR (‘Oracle is best database programa11 ming language 1 language ‘,'[aeiou]’, 1, 1, 0, ‘i’) regexp_instr FROM dual;

Output:

REGEXP_INSTR

———————-

1

Here we are using match parameter as ‘i’ which will reduce the case sensitiveness and fetches the position of first vowel which is ‘O’.

6.Find out the position of Dot from the query :

User can find out the position of any special character using REGEXP_INSTR function.For finding out dot user needs to use ./ option.

Query :

SELECT REGEXP_INSTR (‘Oracle.is.best database programming language.’, ‘\.’, 1, 2, 0, ‘i’) regexp_instr FROM dual;

Output :

REGEXP_INSTR

———————-

10

These are some examples of REGEXP_INSTR which is used to find out the position of the character. Hope everyone like this article.Dont forget to comment on comment section.

Amit S

Oracle Consultant with vast experience in Oracle BI and PL/SQL Development. Amiet is the admin head of this website who contributes by preparing tutorials and articles related to database technologies. He is responsible to manage the content and front-end of the website.

Recent Posts

The Essential Guide to Cryptocurrency Exchange Platform Development for Beginners and Beyond

Introduction Cryptocurrencies took the world by storm, setting up a new financial system and breaking…

5 months ago

Top 20 System Administrator Interview Questions and answers

In my previous article I have given Top 20 technical support interview questions with its…

8 months ago

Desktop Support Scenario Based Interview Questions

In my previous articles I have given 15 most asked desktop support interview questions with…

8 months ago

How Do Business Analysts Use SQL for Their Needs?

A business analyst is someone who is versed in processes of data analysis used for…

8 months ago

Top 15 Control-M Interview Questions with Answers

In my previous article I have already given top questions and answers for Desktop support…

8 months ago

Top 20 SQL Interview Questions for Production Support

In my previous article I have given unix production support interview questions and answers. In…

8 months ago