Table of Contents

String.indexOf( ) Method Flash 5

find the first occurrence of a substring in a string
string.indexOf(substring)
string.indexOf(substring, startIndex)

Arguments

substring

A string containing the character or characters for which to search.

startIndex

An optional integer position in string at which to start searching for substring. Should be in the range of 0 (the first character) to string.length - 1 (the last character). Defaults to 0.

Returns

The position of the first occurrence of substring in string (starting at startIndex). Returns -1 if substring is not found at or after startIndex in string.

Description

The indexOf( ) method is used to search for characters in strings or to check whether a string contains a certain substring. The search is case-sensitive. Use toLowerCase( ) to ensure a case-neutral search, as shown in the third Example.

Example

// Check if an email address contains an @ sign
var email = "derekaol.com";
if (email.indexOf("@") =  = -1) {
  trace("This isn't a valid email address");
}
   
// Check if an email address has an @ sign and is from the domain aol.com
var email = "derek@aol.com";
var atPos = email.indexOf("@");
if (atPos != -1 && email.indexOf("aol.com") =  = atPos + 1) {
  gotoAndStop("AOLuserOffer");
}

The following code creates a generic function that performs a case-insensitive search for a keyword in a string, as you might need when grading a fill-in-the-blank quiz:

// Generic function to search origStr for any occurrence
// of searchStr, using a case-insensitive comparison
function search (origStr, searchStr) {
  var origStr = origStr.toLowerCase();
  var searchStr = searchStr.toLowerCase();
  return origStr.indexOf(searchStr) != -1;
}
   
var answer = "einstein";
var guess = "Dr. Albert Einstein";
   
// Increment score if guess contains "einstein"
if (search(guess, answer)) {
  score++;
}

See Also

String.charAt( ), String.lastIndexOf( ), String.toLowerCase( ); "The indexOf( ) function," in Chapter 4


Table of Contents