Oracle Plsql Instrb Function

Oracle / PLSQL: INSTRB Function

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

Description

The Oracle/PLSQL INSTRB function returns the location of a substring in a string, using bytes instead of characters.

Syntax

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

INSTRB( 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 INSTRB 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 INSTRB function returns a numeric value. The first position in the string is 1. If substring is not found in string, then the INSTRB function will return 0.

Note

Applies To

The INSTRB 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 INSTRB function examples and explore how to use the INSTRB function in Oracle/PLSQL.

For example:

INSTRB('aodba.com', 'e')
Output: 2   (the first occurrence of 'e' - single-byte character set)

INSTRB('aodba.com', 'e', 1, 1)
Output: 2;  (the first occurrence of 'e' - single-byte character set)

INSTRB('aodba.com', 'e', 1, 2)
Output: 9;  (the second occurrence of 'e' - single-byte character set)

INSTRB('aodba.com', 'e', 1, 3)
Output: 11; (the third occurrence of 'e' - single-byte character set)

INSTRB('aodba.com', 'e', -3, 2)
Output: 9   (single-byte character set)