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 |