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 ...

Get Actionscript Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.