Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2001
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2001

[Date Index] [Thread Index] [Author Index]

Search the Archive

RE: Working with strings

  • To: mathgroup at smc.vnet.net
  • Subject: [mg31965] RE: [mg31940] Working with strings
  • From: "tgarza01 at prodigy.net.mx" <tgarza01 at prodigy.net.mx>
  • Date: Fri, 14 Dec 2001 04:21:33 -0500 (EST)
  • Sender: owner-wri-mathgroup at wolfram.com

Something like this,perhaps?


In[1]:=
myString = ToString /@ {S, T, M, x, R, K, P, G}
Out[1]=
{"S", "T", "M", "x", "R", "K", "P", "G"}
In[2]:=
posx = Flatten[Position[LowerCaseQ /@ myString, True]][[
   1]]
Out[2]=
4
In[3]:=
string1 = Take[myString, posx - 1]
Out[3]=
{"S", "T", "M"}
In[4]:=
string2 = Take[myString, posx - Length[myString]]
Out[4]=
{"R", "K", "P", "G"}
In[5]:=
Flatten[Outer[List, string1, string2], 1] /. 
  {a_String, b_String} -> StringJoin[a, 
    myString[[posx]], b]
Out[5]=
{"SxR", "SxK", "SxP", "SxG", "TxR", "TxK", "TxP", "TxG", 
  "MxR", "MxK", "MxP", "MxG"}


Tomas Garza
Mexico City

Original Message:
-----------------
From:  bghiggins at ucdavis.edu (Brian Higgins)
To: mathgroup at smc.vnet.net
Subject: [mg31965] [mg31940] Working with strings


I have a list of string characters that I would like to group in a
particular way. The list has the following structure:

{n UpperCase Characters, x, m UpperCase Characters}

Here is an example:

myString={"S", "T", "M", "x", "R", "K", "P", "G"}

Now I would like to form the following groupings:

{"SxR", "SxK", "SxP", "SxG", "TxR", "TxK", "TxP", "TxG", "MxR", "MxK",
"MxP", \
"MxG"}

A brute force way of doing this is

subString[n_] := Split[myString, UpperCaseQ[#2] && UpperCaseQ[#1]
&][[n]];

Flatten[Outer[StringJoin, Outer[StringJoin, subString[1],
subString[2]],
    subString[3]]]

Does anyone have any elegant way of doing this with perhaps using
replacement rules?

Thanks much,


Brian

--------------------------------------------------------------------
mail2web - Check your email from the web at
http://mail2web.com/ .



  • Prev by Date: RE: Working with strings
  • Next by Date: Re: Re: Solve[] for equations?
  • Previous by thread: RE: Working with strings
  • Next by thread: package from developer's conference