CA SDM::.SPEL::. Sindex

Document created by TMACUL Champion on Jan 25, 2017Last modified by Daniel Becker Bighelini on Aug 28, 2018
Version 3Show Document
  • View in full screen mode




A spel function which, although much diffrent in syntax, works similar to regex (Regular Expression) string matches found in most other programming languages.

Returns the index of the first appearance of the pattern in the search string. Patterns can be regular expressions.


int sindex(string search_str, string pattern, [int start_index]);

Returns the index of the first appearance of PATTERN in the SEARCH_STR from the initial INDEX, when informed.


Sindex will return a -1 is no match is found or the position of the first character of the match. Position count starts from zero.


  • If statement using sindex (matching a string against a string)
printf(sindex("test string", "test")); // 0
if (sindex("test string", "test") == 0) {     return;}

printf(sindex("test string", "test", 5)); // -1
  • Pushing the results of sindex into a variable (matching a string in another variable)
int results;
results = sindex(, "776B094702EABB4B87F04A139E72D44B");
if (results == -1) {
     set_return_data("No Match");
} else {
// Regular expression example
sindex(action_desc, "(wf:[0-9]+)");

// This will print "sindex: 2"
printf("sindex: %d\n", sindex("This is a test message.", "is"));