Skip to main content

Instrx

Instrx (Function)

Format

instrx ( haystack_string_expression , regular_expression )
instrx ( haystack_string_expression , regular_expression , start_expression )

returns integer_expression

Description

Check to see if the text represented by the regular expression regular_expression is contained in the string haystack_string_expression. If it is, then this function will return the index of starting character of the first place where needle_string_expression occurs. Otherwise, this function will return 0.

You may optionally specify a starting location for the search to begin start_expression. If the start is 1 or greater the search will begin from the specified character from the start. If the start is < 0 then the search will begin from the nth character from the end. The search will ALWAYS look forward.

Note

String indices begin at 1.

Example

print instrx("HeLLo", "[Ll]o")
print instrx("Hello, Kitti","[Ii]",10)

will display

4
12

Notes

instrx can be used to test if a string matches a regular expression. In for following example the function isnumber returns true if the string passed is in for format of a floating point number and false if not.

function isnumber(s$)
# return true if a number - false of not
return instrx(s$,"^-?\d+\.?\d*$") <> 0
end function

By default the nature of regular expressions is “greedy”. This behaviour can be changed using the RegexMinimal statement.

See Also

Asc, Chr, Count, Countx, Explode, Explodex, Implode, Instr, Instrx, Left, Length, Ljust, Lower, LTrim, MD5, Mid, Midx, Replace, Replacex, Right, Rjust, RTrim, Serialize, String, Trim, Unserialize, Upper, Zfill

History

0.9.6.56New To Version
1.99.99.53Added start position < 0