Oracle Plsql Instr Function

Oracle / PLSQL: INSTR Function

This Oracle tutorial explains how to use the Oracle/PLSQL INSTR function with syntax and examples.

Description

The Oracle/PLSQL INSTR function returns the location of a substring in a string.

Syntax

The syntax for the INSTR function in Oracle/PLSQL is:

INSTR( string, substring [, start_position [, th_appearance ] ] )

Parameters or Arguments

string

The string to search. string can be CHAR, VARCHAR2, NCHAR, NVARCHAR2, CLOB, or NCLOB.

substring

The substring to search for in string. substring can be CHAR, VARCHAR2, NCHAR, NVARCHAR2, CLOB, or NCLOB.

start_position

Optional. The position in string where the search will start. If omitted, it defaults to 1. The first position in the string is 1. If the start_position is negative, the INSTR function counts back start_position number of characters from the end of string and then searches towards the beginning of string.

nth_appearance

Optional. The nth appearance of substring. If omitted, it defaults to 1.

Returns

The INSTR function returns a numeric value. The first position in the string is 1. If substring is not found in string, then the INSTR function will return 0.

Note

Applies To

The INSTR function can be used in the following versions of Oracle/PLSQL:

  • Oracle 12c, Oracle 11g, Oracle 10g, Oracle 9i, Oracle 8i

Example

Let's look at some Oracle INSTR function examples and explore how to use the INSTR function in Oracle/PLSQL.

For example:

INSTR('aodb is the nic', 'e')
Output: 2   (the first occurrence of 'e')

INSTR('aodb is the nic', 'e', 1, 1)
Output: 2   (the first occurrence of 'e')

INSTR('aodb is the nic', 'e', 1, 2)
Output: 11  (the second occurrence of 'e')

INSTR('aodb is the nic', 'e', 1, 3)
Output: 14  (the third occurrence of 'e')

INSTR('aodb is the nic', 'e', -3, 2)
Output: 2