Pattern Matching
- To: mathgroup at smc.vnet.net
- Subject: [mg23826] Pattern Matching
- From: "Johannes Ludsteck" <ludsteck at zew.de>
- Date: Sat, 10 Jun 2000 03:00:46 -0400 (EDT)
- Organization: Zentr. f. Europ. Wirtschaftsforsch
- Sender: owner-wri-mathgroup at wolfram.com
Dear Group Members, I would like to "find" and replace expressions with the simple structure x[1] b[1]+x[2] b2]+...+x[n] b[n] I tried to use the following replacement rule In[27]:= x[1] b[1] + x[2] b[2] /. Plus[Times[x[_], b[_]] ..] -> z Out[27]= b[1] x[1] + b[2] x[2] + b[3] x[3] Which didn't work (Out[27] should be z). Why? The following FullForm seems to give exactly the structure I used in my replacement rule. In[17]:= FullForm[x[1] b[1] + x[2] b[2] + x[3] b[3]] Out[17]//FullForm= Plus[Times[b[1], x[1]], Times[b[2], x[2]], Times[b[3], x[3]]] Even if this worked, my pattern wouldn't account for equal indices, i.e. it would match x[1] b[500]+x[12] b[3], even if it shouldn't. Any suggestions? Thanks, Johannes Ludsteck Johannes Ludsteck Centre for European Economic Research (ZEW) Department of Labour Economics, Human Resources and Social Policy Phone (+49)(0)621/1235-157 Fax (+49)(0)621/1235-225 P.O.Box 103443 D-68034 Mannheim GERMANY Email: ludsteck at zew.de
- Follow-Ups:
- Re: Pattern Matching
- From: Wagner Truppel <wtruppel@uci.edu>
- Re: Pattern Matching