WOLFRAM LANGUAGE TUTORIAL
Patterns Involving Alternatives
|patt1|patt2|…||a pattern that can have one of several forms|
Specifying patterns that involve alternatives.
This defines h
to give p
when its argument is either a
The first two cases give p
You can also use alternatives in transformation rules.
Here is another example, in which one of the alternatives is itself a pattern.
When you use alternatives in patterns, you should make sure that the same set of names appear in each alternative. When a pattern like (a[x_]|b[x_]) matches an expression, there will always be a definite expression that corresponds to the object x. If you try to match a pattern like (a[x_]|b[y_]), then there still will be definite expressions corresponding to x and y, but the unmatched one will be Sequence[ ].
is used to name the head, which can be either a