O'Reilly logo

Actionscript Cookbook by Joey Lott

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

9.4. Searching for a Substring

Problem

You want to find a value within a string.

Solution

Use the indexOf( ) or lastIndexOf( ) methods.

Discussion

You can use the indexOf( ) and lastIndexOf( ) methods to determine whether a string contains a specified substring value. Each method returns the starting index of the substring if it is found. If the substring is not found, the value -1 is returned.

The indexOf( ) method takes up to two parameters:

substring

The substring value for which you want to search.

startIndex

The zero-relative starting position from which to search within the string. If undefined, the method begins the search from the beginning of the string.

If you want to test whether a string contains another string, you can use the indexOf( ) method with only one parameter. For example:

myString = "This string contains the word cool twice. Very cool!";

// Get the index of the first occurrence of the substring "cool" within myString. 
indexOfCool = myString.indexOf("cool");

// If the indexOf(  ) method returns -1, no occurrences of "cool" were found.
if (indexOfCool != -1) {
  // Displays: "String contains word cool at index 30", because the first occurrence
  // of the substring appears starting at index 30 within myString.
  trace("String contains word cool at index " + indexOfCool);
}

You can get the indexes of subsequent occurrences of a substring by specifying the second, optional parameter of the indexOf( ) method, StartIndex. A simple and effective way to search for the next ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required