Expressions passed to this function must have the following data types:
- inkey = NUMERIC, VARCHAR
- source_string = CHAR, VARCHAR
- regexp_string = CHAR, VARCHAR
- match_arg = VARCHAR
The function returns an error if this size is exceeded or if match_arg = 'l' is specified.
If the inkey is null, an empty string is returned.
The x match option ignores whitespace characters in the pattern/regexp_string. By default, whitespace characters match themselves.
If Teradata Database passes constants as the second and third parameter in an OREPLACE call, the character type of the first argument is passed as Unicode, and calls oreplace_unicode() with the return type VARCHAR in Unicode charset.
You can also pass arguments with data types that can be converted to the above types using the implicit data type conversion rules that apply to UDFs.
The UDF implicit type conversion rules are more restrictive than the implicit type conversion rules normally used by Teradata Database. If an argument cannot be converted to the required data type following the UDF implicit conversion rules, it must be explicitly cast.