EDIT
Modifies a string according to the keywords you specify. This is
similar to the DCL lexical function F$EDIT; the differences are
explained in the DEC Text Processing Utility Manual.
Optionally, returns a string, range, or buffer containing the edited
text.
Syntax
[returned_buffer |
returned_range |
returned_string := ] EDIT ({buffer | range | string},
keyword1[,...] [,keyword2] [,keyword3])
Parameters
buffer The buffer in which you want DECTPU to edit text.
Note that you cannot use the keyword NOT_IN_PLACE if
you specify a buffer for the first parameter.
range The range in which you want DECTPU to edit text.
Note that you cannot use the keyword NOT_IN_PLACE if
you specify a range for the first parameter.
string The string you want to modify. If you specify a
return value, the returned string consists of the
string you specify for the first parameter, modified
in the way you specify in the second and subsequent
parameters. If you specify IN_PLACE for the third
parameter, EDIT makes the specified change to the
string specified in the first parameter. EDIT has
no effect on string constants.
keyword1 A keyword specifying the editing operation you want
to perform on the string. Valid keywords are:
COLLAPSE, COMPRESS, INVERT, LOWER, TRIM,
TRIM_LEADING, TRIM_TRAILING, or UPPER.
keyword2 A keyword specifying whether DECTPU quote characters
are used as quote characters or as regular text.
The valid keywords are ON or OFF. The default is
ON.
keyword3 A keyword indicating where DECTPU is to make the
indicated change. The valid keywords and their
meaning are as follows:
Keyword Meaning
------- -------
IN_PLACE Make the indicated change in place.
This is the default.
NOT_IN_PLACE Leave the the specified string
unchanged and return a string that
is the result of the specified
editing. You cannot use NOT_IN_PLACE
if the first parameter is specified as
a range or buffer. To use
NOT_IN_PLACE, you must specify
a return value for EDIT.
returned_buffer A variable of type buffer pointing to the buffer
containing the modified text, if you specify a
buffer for the first parameter. The variable
"returned_buffer" points to the same buffer pointed
to by the buffer variable specified as the first
parameter.
returned_range A range containing the modified text, if you specify
a range for first parameter. The returned range
spans the same text as the range specified as a
parameter, but they are two separate ranges. If you
subsequently change or delete one of the ranges,
this has no effect on the other range.
returned_string A string containing the modified text, if you
specify a string for the first parameter.
Examples
1. returned_value := EDIT (the_string, COLLAPSE, OFF, NOT_IN_PLACE);
Removes all spaces and tabs from the string pointed to by
"the_string" and does not treat quotation marks or apostrophes as
quote characters. Returns the modified string in the variable
"returned_value", but does not change the string in the variable
"the_string".
2. The following procedure shows a general way of changing any input
string to lower case; the string with the changed case is written
to the message area:
PROCEDURE user_lowercase_string (input_string)
EDIT (input_string, LOWER);
MESSAGE (input_string);
ENDPROCEDURE;
Related Topics
CHANGE_CASE TRANSLATE