Quote:Hi -
I just found another character that will not work (by itself) in a retrieve spec.
The character is an asterisk *
Use either /* or [* and the search will work.
Thanks!
Spencer, when you say "does not work", you mean that it implements a search command (does some work). Every character that you have found so far in one way or another implements a search command (work). As such, to use them literally, Sesame provides a means to "escape" or literalize that search command - to tell it that, this time, you intend to find that character itself as opposed to running the command that character represents.
In almost every case these characters are hold overs from Q&A or are the very well known characters that implement regular expressions. In any case, any database that implements a search language, has a set of these characters. And, in almost every case, the backslash "\" is used to escape them.
In these posts and in the title of this thread, you seem to be implying that there is something broken. Having command characters in the search language is a necessary feature of a search language. Most of these are derived from Q&A and implemented very similarly. A handful are new additions or modifications of the Q&A character (like "~" no longer meaning "soundex"). And, I will grant that something less than five of them slipped by undocumented (There are two that I know of: "[" and "*"). But, in all, they do the commands they are intended to do.
To describe them as "non-working" is missleading. These are the characters that do all of the "work" of a search language. Without them, every search spec would have to be absolutely identical to the value in the field. No range operations could be performed. No comparison operations could be done (i.e.: "< 22"). There could be no wildcard searches. There could be no search spec programming, etc..
The pages between 221 and 255 of the User's Manual outline these command characters, and on page 235 the "escaping" of command characters is described.
Quote:More Special search characters
Here are several more characters that have a specific meaning in Sesame searches.(The more commonly-used ones have already been described.):
\ Means "treat the next character as a literal character."
] Means "treat what follows as a text string."
& Means AND — used to string together multiple criteria.
~ Means "make this a case-sensitive search."
\ Suppresses the special meaning of characters such as &, =, .. and so forth, and is used immediately before such a character. It affects only the single character following the \. You can use \ anywhere in the criteria and you can use it more than once. Examples of use include finding records that have been inadvertently added by entering retrieve criteria in Add mode, and searching for characters such as the ampersand ("&") and equals ("=") sign.
] Performs a text search in a non-text field. The ] must be the first character of the criteria. There are limited opportunities to use this special search character because Sesame's strict data typing prohibits the entry of invalid information in number and date fields, for example. The primary use of ] is to perform wildcard searches in date fields. This is possible because the underlying value stored in the date field — regardless of format — is stored in YYYY/MM/DD (2003/12/15, for example) format.
By beginning the search criteria with ] you can use Sesame's regular wildcard characters. This will be shown in the examples below.