coldfusion - String manipulation Code Changes -


the following code creates codes issues in following

<cfset str = "previoushistory-diagnosis= 085.2 : cutaneous leshmaniasis, asian desert**controlled-diagnosis= 085.2 : asian desert cutaneous leishmaniasis**controlled-diagnosis= 153.2 : cancer of colon, descending colon**active-diagnosis= 209.15 : mal carcinoid desc colon**151.9 : stomach cancer= uncontrolled"> <cfset string1 = ''> <cfset generatelst = ''> <cfset generatelst = ''> <cfset generatetextlst = ''> <cfset generatestr = ''> <cfloop list="#str#" index="elem" delimiters="**"> <cfset string1 = listappend(string1, elem,'~')> <cfset delimis = ":">     <cfloop list="#string1#" index="k" delimiters="~">     <cfset getstring = gettoken(k,1,'#delimis#')>     <cfset generatestr = listremoveduplicates(listappend(generatestr,getstring))>     <cfset getid = gettoken(k,2,'#delimis#')>     <cfset generatelst = listremoveduplicates(listappend(generatelst,getid))>     <cfset gettext = gettoken(k,3,'#delimis#')>     <cfset generatetextlst = listremoveduplicates(listappend(generatetextlst,gettext))>     </cfloop> </cfloop> <cfdump var="#str#"><br /><br> <cfdump var="#generatestr#"><br /><br /> <cfdump var="#generatelst#"><br /><br /> <cfdump var="#generatetextlst#"> 

generated outputs

for generatestr

previoushistory-diagnosis= 085.2 ,controlled-diagnosis= 085.2 ,controlled-diagnosis= 153.2 ,active-diagnosis= 209.15 ,151.9  

for generatelst

cutaneous leshmaniasis, asian desert, asian desert cutaneous leishmaniasis, cancer of colon, descending colon, mal carcinoid desc colon, stomach cancer= uncontrolled 

for generatetextlst

[empty string]  

now problem lies in

<cfdump var="#generatestr#"><br /><br /> <cfdump var="#generatelst#"><br /><br /> 

now value generatestr coming as:

previoushistory-diagnosis= 085.2 ,controlled-diagnosis= 085.2 ,controlled-diagnosis= 153.2 ,active-diagnosis= 209.15 ,151.9

can change this

085.2 ,085.2 ,153.2 ,209.15 ,151.9

and use removed values append second list relevant this

cutaneous leshmaniasis, asian desert*=previoushistory-diagnosis*, asian desert cutaneous leishmaniasis*=controlled-diagnosis*, cancer of colon, descending colon*=controlled-diagnosis*, mal carcinoid desc colon*=active-diagnosis*, stomach cancer= uncontrolled

i confused how play couple of list elements make happen above

any guidance

this should enough started. modified cfloop this:

<cfloop list="#string1#" index="k" delimiters="~">     <cfset getstring = gettoken(k,1,'#delimis#')>     <cfset gettext = trim(gettoken(getstring,1,'='))>    <!--- returns text example previoushistory-diagnosis --->     <cfset getvalue = trim(gettoken(getstring,2,'='))>   <!--- returns value example 085.2 --->     <cfset generatestr = listremoveduplicates(listappend(generatestr,getvalue))>     <cfset getid = gettoken(k,2,'#delimis#')>     <cfset newtext = getid & "=" & gettext>              <!--- concatenates 2 strings = inbetween --->     <cfset generatelst = listremoveduplicates(listappend(generatelst,newtext))>     <cfset gettext = gettoken(k,3,'#delimis#')>     <cfset generatetextlst = listremoveduplicates(listappend(generatetextlst,gettext))> </cfloop> 

which outputs generatestr as:

085.2,153.2,209.15, 

and generatelst as:

 cutaneous leshmaniasis, asian desert=previoushistory-diagnosis, cutaneous leshmaniasis, asian desert cutaneous leishmaniasis=controlled-diagnosis, cancer of colon, descending colon=controlled-diagnosis, mal carcinoid desc colon=active-diagnosis, cutaneous leshmaniasis, stomach cancer= uncontrolled=151.9 

notice there empty value @ end of generatestr list. because last value in str list not fit format of others. value 151.9 @ beginning instead of after = character.

this in turn throws off generatelst list well. makes last value become stomach cancer= uncontrolled=151.9, assume not want.

so need play around bit more finalize need. these kinds of problems run when attempting parse strings of data not consistent.


Comments

Popular posts from this blog

php - Calling a template part from a post -

Firefox SVG shape not printing when it has stroke -

How to mention the localhost in android -