Instead of entering some text to be anagrammed, you can enter a pattern to find matching words in the current lexicon. As you type in a pattern the "Find Usable Words" button automatically changes to "Find Lexicon Words". Here are some example patterns:

* Find all words in the lexicon.
*x* Find words that contain the letter "x".
!*x* Find words that don't contain "x".
*ed Find words ending with "ed".
*(ed|ing) Find words ending with "ed" or "ing".
(axe) See if the word "axe" is in the lexicon.
??? Find words with 3 letters.
?10 Find words with 10 letters.
?7-10 Find words with 7 to 10 letters.
?7- Find words with at least 7 letters.
?-7 Find words with at most 7 letters.
[xyz]* Find words starting with "x", "y" or "z".
[!aeiou]- Find words with no vowels.

Let's look at some more complicated patterns. Note that spaces are ignored and can be used to make a long pattern more readable. This example will find all words containing a single "a":

[!a]- a [!a]-

The Boolean equation A and B = not((not A) or (not B)) is used in the next pattern to find all words containing "i" and "n" and "g" (in any order) but not ending in "ing":

! ( [!i]- | [!n]- | [!g]- | *ing )

NOTE: When using patterns with a numeric lexicon you need to enclose a repeat count in angle brackets to avoid any ambiguity. For example, if you want to find all 3-digit numbers then use the pattern "?<3>" rather than "?3" (the latter will find all 2-digit numbers ending with 3). Angle brackets can also be used in patterns for a non-numeric lexicon.

The above examples illustrate all of the special pattern characters:

* Match zero or more letters.
? Match any single letter.
[...] Match any letter in the given list; eg. [abc].
[!...] Match any letter NOT in the given list; eg. [!aeiou].
N Specifies a fixed repeat count, where N is a non-negative integer. Repeat counts are only allowed after ?, ], or a letter; eg. ?9.
M-N Specifies a variable repeat count, where M and N are optional non-negative integers indicating the minimum and maximum counts. If M is missing then 0 is assumed, and if N is missing then infinity is assumed. Note that * is equivalent to ?-.
<...> Any repeat count can be enclosed in angle brackets; eg. <2-5>. This form of a repeat count is necessary when using a numeric lexicon (where digits are valid "letters").
- Used inside [...] to indicate a letter range; eg. [a-z], or to separate min and max repeat counts; eg. 2-5.
(...) Match a subpattern; eg. (a|b)*.
| Means OR. For matching alternative patterns; eg. a*|b*.
! Means NOT. Can only be the first character in the pattern or the first character after [.

Patterns can also be typed into the Edit menu's "Find Word(s)" dialog to find and select matching words in the current list of usable/lexicon words.