Instr/InstrRev

From NSB App Studio
Jump to: navigation, search

Instr([start, ]string1, string2[, compare])

InstrRev(string1, string2[, start[, compare]])

Description

Instr returns a long value specifying the position of one string within another, measured from the start of the string searched.

InstrRev returns a long value specifying the position of one string within another, measured from the end of the string searched.

The optional parameter, start, is a numeric expression that specifies the starting position of the search within the target string. If start is not provided, the search defaults to 1, the first character position for Instr, or -1, the last character position for InstrRev. The required parameter, string1, is the string being searched. The required parameter, string2, is the string that is being searched for. The optional parameter, compare, is used to specify the type of search performed. If string2 is found in string1, a positive integer is returned with 1 being the location of the first character, otherwise 0 is returned if string2 is not found in string1.

Table: Comparison constants

Constant Value Description
vbBinaryCompare 0 Binary comparison case sensitive (default)
vbTextCompare 1 Textual comparison, case insensitive

Example (Basic)

Rem Instr/InstrRev finds a string in another
Dim Pos1, Pos2
Pos1 = Instr("Cartman", "man")
Pos2 = InstrRev("Big Al's Big Boat Ride", "big", 4, vbTextCompare)
Print "Finding ""man"" from start:", Pos1
Print "Finding ""big"" from end:", Pos2

Example (JavaScript)

// Instr/InstrRev finds a string in another

var srchStr = "Cartman";
var fndStr = "man"
var Pos1 = srchStr.indexOf(fndStr)+1;

srchStr="Big Al's Big Boat Ride".toLowerCase();
fndStr="big".toLowerCase();
srchStr=srchStr.substr(0,4)
var Pos2 = srchStr.lastIndexOf(fndStr)+1;

NSB.Print('Finding "man" from start: ' + Pos1);
NSB.Print('Finding "big" from end: ' + Pos2);

Output

Finding "man" from start:  5
Finding "big" from end:    1