Scalar FunctionsString Functions
indexof
Returns the zero-based index of the first occurrence of a substring.
Syntax
indexof(source, lookup, start_index, length, occurrence)Parameters
Prop
Type
Given a dynamic field
This parameter is string-only. In permissive mode — the default — almost every field arrives as a dynamic, so passing one works because Berserk injects asstring: extract-or-null, the value when it really is a string and null otherwise, so the call yields null (a predicate yields false). A property bag or array is therefore not matched, and tostring() is never applied implicitly — use it explicitly to match a bag's JSON text, keys included. Strict mode rejects the dynamic instead of coercing it. See String coercion and the asXXX family.
Returns: long
Examples
Example 1 — Find the position of a substring
print indexof("Ragnar Lothbrok", "Loth")| print_0 (long) |
|---|
| 7 |
Example 2 — Search starting from a given position
print indexof("raid on Lindisfarne, raid on York", "raid", toint(5))| print_0 (long) |
|---|
| 21 |
Example 3 — Find the second occurrence of a substring
print indexof("raid on Lindisfarne, raid on York", "raid", toint(0), toint(-1), toint(2))| print_0 (long) |
|---|
| 21 |