08. april 2003 - 23:17Der er
14 kommentarer og 1 løsning
udskrive 1 char i et loop
Jeg er inde i et repeat loop som udskriver et ord af gangen fra en ordbog. Jeg vil gerne skrive et stort bogstav for hver gang der starter et nyt bogstav...
noget i retning af:
if thechar = "" or thechar <> char 1 of ordbog.Fields.Item("ord").Value then thechar = char 1 of ordbog.Fields.Item("ord").Value Response.Write(thechar)% end if
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
do while not xxx ' første bogstav char1 = left(str) ' hvis første bogstav er <> første bogstav fra sidste loop sættes 1. bogstav stort. if char1 <> oldchar1 then ' sæt første bogstav til uppercase str = upper(char1) & rigth(char1,len(char1)-1) end if oldchar1 = char1 response.write str loop
Microsoft VBScript runtime error '800a01c2' Wrong number of arguments or invalid property assignment: 'left' /p.asp, line 128
' første bogstav str = ordbog.Fields.Item("ord").Value char1 = left(str) ' hvis første bogstav er <> første bogstav fra sidste loop sættes 1. bogstav stort. if char1 <> oldchar1 then ' sæt første bogstav til uppercase str = upper(char1) & rigth(char1,len(char1)-1) end if oldchar1 = char1 response.write str%>
Nu udskriver den HELE ordet foran hver record! Den skal bare skrive A (én gang) og når B kommer til B (én gang) Kan i hjælpe mig på vej igen?
Nu ser det sådan ud.
repeat....
<% ' første bogstav str = ordbog.Fields.Item("ord").Value char1 = left(str,1) ' hvis første bogstav er <> første bogstav fra sidste loop sættes 1. bogstav stort. if char1 <> oldchar1 then ' sæt første bogstav til uppercase str = ucase(char1) & right(char1,len(char1)-1) end if oldchar1 = char1 response.write str%>
<% ' første bogstav str = ordbog.Fields.Item("ord").Value char1 = left(str,1) ' hvis første bogstav er <> første bogstav fra sidste loop sættes 1. bogstav stort. if char1 <> oldchar1 then ' sæt første bogstav til uppercase str = ucase(char1 else str = "" end if
TAK NU VIRKER DET! Jeg har dog tænkt over om det ikke kunne optimeres lidt på hastiheden. Men dette virkede ikke.
<% ' første bogstav str = ordbog.Fields.Item("ord").Value char1 = left(str,1) ' hvis første bogstav er <> første bogstav fra sidste loop sættes 1. bogstav stort. if char1 <> oldchar1 then ' sæt første bogstav til uppercase str = ucase(char1) response.write "<font size='7'>"&str&"</font><BR><BR>" else str = "" end if
wrong formuliering. Det virker ok men mit optimeringsforslag virker ikke. -> at jeg sætter response.write ind i if sætningen, for at reducere antal reponser.
Helt ærligt så tror jeg ikke det betyder noget med de servere vi har idag.
prøv evt dette: <% ' første bogstav str = ordbog.Fields.Item("ord").Value
char1 = left(str,1) ' hvis første bogstav er <> første bogstav fra sidste loop sættes 1. bogstav stort. if char1 <> oldchar1 then ' sæt første bogstav til uppercase response.write "<font size='7'>" & ucase(char1) & "</font><BR><BR>" else response.write " " end if
oldchar1 = char1 %>
Teoretisk set kan du, for at optimere, fjerne alle kommentarer da serveren jo læser al koden igennem ved afvikling....
Den første: 4/11/2003 8:32:10 Den sidste: 4/11/2003 8:32:11 Du har ret, det er kun 1 sek.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.