12. maj 2007 - 19:11
Der er
6 kommentarer og 1 løsning
Tekst i textarea skal omskrives
Hej eksperter. Jeg har en form, hvor man kan udfylde et textarea. Den tekst jeg skal have tastet skal altid være i formen: ____ Metal: 73.299 Krystal: 66.606 Deuterium: 21.632 Energi: 424 ____ Når der bliver trykket submit, skal den sende til en side, som med requst.form("blabla") tager fat i sætningerne ovenfor. Meningen er, at den skal ændre lidt på teksten, således at det til sidst bliver: ____ 80768.5 16.15 ____ 80768.5 er tallet ud fra metal + tallet ud fra krystal + deuterium. Det hele skal deles med to. 16.15 kommer af tallet ovenfor 80768.5 delt med 5000. Der skal ses bort fra tallet ud fra energi. Jeg sætter stor pris på, hvis nogen kan hjælpe mig. På forhånd tak.
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
<% text = Request.Form("text") If text <> "" Then Set re = New RegExp re.Pattern = "Metal: ([\d.]+)[\s\S]*?Krystal: ([\d.]*)[\s\S]+?Deuterium: ([\d.]+)" Set matches = re.Execute(text) If matches.Count > 0 Then match = matches(0) metal = Int(Replace(matches(0).SubMatches(0), ".", "")) krystal = Int(Replace(matches(0).SubMatches(1), ".", "")) deut = Int(Replace(matches(0).SubMatches(2), ".", "")) total = (metal+krystal+deut)/2 cargos = Int(total/5000)+1 Response.write "<b>Small cargos: " & cargos & "<b></br>" Else Response.Write "<b>Forkert syntaks</b>" End If End If %> <form method="post" action="test.asp"> <textarea name="text"> Metal: 73.299 Krystal: 66.606 Deuterium: 21.632 Energi: 424 </textarea> <input type="submit">
tak, plx. Jeg får desværre at siden ikke kan vises. Der må være en fejl et sted?
Jeg giver dig 50 point mere, hvis du kan få: Råstoffer på the dark planet [1:167:8] den 05-12 19:34:53 Metal: 37.134 Krystal: 14.092 Deuterium: 44.342 Energi: 4.069 til at blive: [1:167:8] Small cargos: xxx
<% text = Request.Form("text") If text <> "" Then Set re = New RegExp re.Pattern = "(\[\d+:\d+:\d+\])[\s\S]*?Metal: ([\d.]+)[\s\S]*?Krystal: ([\d.]*)[\s\S]+?Deuterium: ([\d.]+)" Set matches = re.Execute(text) If matches.Count > 0 Then coords = matches(0).SubMatches(0) metal = Int(Replace(matches(0).SubMatches(1), ".", "")) krystal = Int(Replace(matches(0).SubMatches(2), ".", "")) deut = Int(Replace(matches(0).SubMatches(3), ".", "")) total = (metal+krystal+deut)/2 cargos = Int(total/5000)+1 lcargos = Int(total/25000)+1 Response.write "<b>"+coords+"<br>Small cargos: " & cargos & "<br>Large cargos: " & lcargos & "<b></br>" Else Response.Write "<b>Forkert syntaks</b>" End If End If %> <form method="post" action="test.asp"> <textarea name="text"> Råstoffer på the dark planet [1:167:8] den 05-12 19:34:53 Metal: 37.134 Krystal: 14.092 Deuterium: 44.342 Energi: 4.069 </textarea> <input type="submit">
jeg formoder du spiller ogame :)
Hehe, jeg formoder du enten gør eller har gjort ;) Tak for hjælpen.
Kurser inden for grundlæggende programmering