str_regexp_replace_string_c

	status.i4.v = str_regexp_replace_string_c(source_string.i1a.r,
						  source_length.i4.v,
						  match_pattern.i1a.r,
						  match_length.i4.v,
						  case_sensitive.i4.v,
						  use_extended.i4.v,
						  normal_nl.i4.v,
						  options.u4.v,
						  replace_string.i1a.r
						  [,replace_length.i4.v]
						  [,next_string.i1p.r])

	This routine finds the first occurrence of one string within another
	and replaces it with another string.  If the source string is a
	simple null terminated string, its length will be changed if the
	match string and the replacement string have different lengths.
	As a result, the buffer containing the source string must be long
	enough to contain the resultant string after a replacement has
	taken place.

	source_string	string to be searched and possibly modified
	source_length	length of string to be searched  (If this argument
			has a value of zero, the routine will determine
			the length of the string.)
	match_pattern	pattern to be searched for  (If a value of NULL is
			passed for this argument, the last pattern established
			will be used.)
	match_length	length of search pattern string  (If this argument
			has a value of zero, the routine will determine
			the length of the string.)
	case_sensitive	case sensitivity flag
			(TRUE -> case sensitive search,
			 FALSE -> case insensitive search)
	use_extended	use extended regular expressions flag
			(TRUE -> use extended regular expressions,
			 FALSE -> don't use extended regular expressions)
	normal_nl	new line character handling flag
			(TRUE -> treat new line as a normal characer,
			 FALSE -> treat new line characters specially in
				  conjunction with '^' and '$'
				  search characters)
	options		search options (not used)
	replace_string	replacement string
	replace_length	length of replacement string  (If this argument
			has a value of zero, the routine will determine
			the length of the string.) (default is 0)
	next_string	address of the next character in the source string
			following the replacement string
			(If a value of NULL is passed for this argument,
			no address will be returned.) (default is NULL)

	This function returns status values as follows:

	CLIB_INVARG		invalid argument passed
	CLIB_NOINIT		no search pattern esablished
	0			string not found
	positive number		index of start of replacement string
				(starts at 1)

	This function requires the following include files:

	cbslib_h, acnet_errors_h

	Related functions:

	str_regexp_compile_pattern_c, str_regexp_free_pattern,
	str_replace_string_c, str_replace_bracketed_c, str_regexp_find_string_c,
	str_find_string_c, str_find_last_string_c, str_replace_char_c,
	str_replace_char_set_c, str_regexp_compare, str_regexp_compare_nocase,
	str_regexp_insert_string_c, str_regexp_remove_string_c,
	str_remove_char_set_c, str_find_character_c, str_find_character_set_c,
	strstr, strstr_nocase, str_compare_n_nocase_c, str_compare_nocase,
	strncmp, strcmp, strncmx, str_insert_string_c, str_split_c,
	str_get_bracketed_c, str_find_not_in_character_set_c

	C/C++ usage:

	static char	source_string[65] = "This is a string.";
	static const char	match_string[] = "is";
	static const char	replace_string[] = "was";
	char	*next_string;
	int	status;
	int	source_length = 0;
	int	match_length = 0;
	int	case_sensitive = FALSE;
	int	use_extended = FALSE;
	int	normal_nl = TRUE;
	unsigned int	options = 0;

	status = str_regexp_replace_string_c(source_string,source_length,
					     match_string,match_length,
					     case_sensitive,use_extended,
					     normal_nl,options,replace_string,
					     replace_length,&next_string);