CurrentQuoted (StringTokenizer function)
Is current token a quoted token? (StringTokenizer class)
This method returns a Boolean value that indicates whether
the current token is a quoted token.
A quoted token contains all the characters between a pair of identical
quotation characters.
The CurrentQuoted value is True
if the current token is quoted;
otherwise it is False
.
Syntax
%boolean = stringTokenizer:CurrentQuoted
Syntax terms
%boolean | An enumeration object of type Boolean to contain the returned value of CurrentQuoted. |
---|---|
stringTokenizer | A StringTokenizer object expression. |
Usage notes
- The Quotes characters are initially settable in the New call that creates the tokenizer instance.
- A quotation character may participate in only one quoted region. The first quotation character from the beginning of the tokenization string is paired with the following identical quotation character in the string. An unpaired quotation character causes a request cancellation.
- A quoted region is not affected by the TokensToLower and TokensToUpper properties.
- The RemoveQuotes property controls whether quotes are removed from the returned values of quoted tokens.
Examples
- In the following request fragment, the selection of a quoted token
is verified by a CurrentQuoted call:
%tok = new(quotes='"') %tok:string = 'simple "quoted tokens" example' PrintText {~} is: {%tok:nextToken} PrintText {~} is: {%tok:nextToken} PrintText {~} is: {%tok:currentToken} PrintText {~} is: {%tok:currentQuoted}
The result is:
%tok:nextToken is: simple %tok:nextToken is: quoted tokens %tok:currentToken is: quoted tokens %tok:currentQuoted is: True
Note: Printing an enumeration value is described in the ToString property discussion in Usage notes on the Enumerations page.
- If QuotesBreak is
False
and only part of a token is quoted, CurrentQuoted returnsTrue
only if, unlike below, the quoted part is at the beginning of the token:%tok = new(quotes='"', Separators=',') %tok:quotesbreak = False %tok:string = 'about the, ben"jamins"' PrintText {~} is: {%tok:nextToken} PrintText {~} is: {%tok:nextToken} PrintText {~} is: {%tok:currentQuoted}
The result is:
%tok:nextToken is: about the %tok:nextToken is: benjamins %tok:currentQuoted is: False
If the tokenizer string in this example were
about the, "ben"jamins
, CurrentQuoted would returnTrue
in accord with the SOUL concept that a quoted token does not end until it reaches a space or separator character after the closing quotation mark character. For further discussion of SOUL quoted-string handling, see Double quotation marks for quoted strings.See also