Returns the zero-based index of the first occurrence of a specified lookup regular expression within the input string.

See indexof().



Learn more about syntax conventions.


Name Type Required Description
string string ✔️ The source string to search.
match string ✔️ The regular expression lookup string.
start int The search start position. A negative value will offset the starting search position from the end of the string by this many steps: abs(start).
length int The number of character positions to examine. A value of -1 means unlimited length.
occurrence int The number of the occurrence. The default is 1.


The zero-based index position of match.

  • Returns -1 if match isn't found in string.
  • Returns null if:
    • start is less than 0.
    • occurrence is less than 0.
    • length is less than -1.


  • Overlapping matches lookup aren't supported.
  • Regular expression strings may contain characters that require either escaping or using @'' string-literals.


    idx1 = indexof_regex("abcabc", @"a.c"), // lookup found in input string
    idx2 = indexof_regex("abcabcdefg", @"a.c", 0, 9, 2),  // lookup found in input string
    idx3 = indexof_regex("abcabc", @"a.c", 1, -1, 2),  // there's no second occurrence in the search range
    idx4 = indexof_regex("ababaa", @"a.a", 0, -1, 2), // Matches don't overlap so full lookup can't be found 
    idx5 = indexof_regex("abcabc", @"a|ab", -1)  // invalid start argument


idx1 idx2 idx3 idx4 idx5
0 3 -1 -1