Re: Match exactly zero or one
- To: mathgroup at smc.vnet.net
- Subject: [mg60549] Re: Match exactly zero or one
- From: "Jens-Peer Kuska" <kuska at informatik.uni-leipzig.de>
- Date: Tue, 20 Sep 2005 05:19:03 -0400 (EDT)
- Organization: Uni Leipzig
- References: <dgm0ef$npn$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Hi,
MatchQ[#, 1 | 0] & /@ {0, 1, 2, 3}
??
Regards
Jens
"Trevor Baca" <trevorbaca at gmail.com> schrieb im
Newsbeitrag news:dgm0ef$npn$1 at smc.vnet.net...
| What's the easiest way to match exactly zero or
one expressions within,
| say, MatchQ[ ]?
|
| For example: call any expression expr a
well-formed foo when and only
| when (1) the head of expr equals foo; (2) the
first element of expr is
| either 0 or 1 bar expressions; (3) the last
element of expr is an
| integer. Then neither the predicate ...
|
| FooQ[expr_] := MatchQ[expr, foo[_bar,
_Integer]]
|
| ... nor ...
|
| FooQ[expr_] := MatchQ[expr, foo[__bar,
_Integer]]
|
| ... nor ...
|
| FooQ[expr_] := MatchQ[expr, foo[___bar,
_Integer]]
|
| ... accurately capture the definition of foo.
|
| For string-matching there's the ? operator; but
what's the best
| approach for expression-matching?
|
| (FWIW Gavin Scott posed this question in
December 2000, but I couldn't
| find an answer in the thread.)
|
|
| Trevor.
|