Re: position of letters in a string

• To: mathgroup at smc.vnet.net
• Subject: [mg53844] Re: position of letters in a string
• From: bghiggins at ucdavis.edu
• Date: Sat, 29 Jan 2005 06:02:54 -0500 (EST)
• References: <ctcr1b\$24v\$1@smc.vnet.net>
• Sender: owner-wri-mathgroup at wolfram.com

```Zak, Here is one way to assign a number to a letter in string based on

UnsortedUnion[x_]:=Module[{f},f[y_]:=(f[y]=Sequence[];y);f/@x]
Map[MapIndexed[Rule[#1,First[#2]]&,UnsortedUnion[Characters[#]]]&,lst]

{{"c" -> 1, "a" -> 2, "t" -> 3, "z" -> 4},
{"z" -> 1, "r" -> 2, "t" -> 3, "y" -> 4, "s" -> 5}}

Note you cannot assign a string varable a value but if you want the
string "catz" be represented   by "1234" and  zrtys by "12345" you can
use

(StringJoin[StringReplace[UnsortedUnion[Characters[#1]],
MapIndexed[#1 -> ToString[First[#2]] & ,
UnsortedUnion[Characters[#1]]]]] & ) /@ lst

{"1234", "12345"}

Cheers,

Brian
zak wrote:
> in the list of strings:
> lst={"catcatz","zrzttys"}
> i want some procedure to give the letters in every string a number
> depending on its position and discarding the recurrent letters such
> that:
> first string: c=1;  a=2;  t=3; z=4
> second string: z=1;  r=2;  t=3;  y=4;  s=5
> zak

```

• Prev by Date: Re: Nonlinear Curve Fitting
• Next by Date: Re: position of letters in a string
• Previous by thread: Re: position of letters in a string
• Next by thread: Re: position of letters in a string