For satan da...! *G* Well, MsgBox findes jo ikke i ASP..! så brug denne: streng = "Hejsa min gode mand" If InStr(1, streng, "gode") Then Response.Write("Det fantes") Else Response.Write("Nope") End If
For i = 0 to UBound(arrString) For s = 0 to UBound(arrSearch) If UCase(arrString(i)) = UCase(arrSearch(s)) Then bolFound = True Exit For End If Next If bolFound = True Then Exit For End If Next
If bolFound = True Then 'Ord Fundet Else 'Ord ikke fundet End If
og at sige den ikke findes i asp er da også noget rod... asp er jo ikke noget programmeringssprog... ovenstående kode jeg har lavet er VBScript som for det meste er default sprog på en IIS webserver. Af andre sprog man kan bruge kan nævnes JScript og Perl.
cyberfessor>> Det med kopieringen er bare ok..! -men det med at man kan bruge MsgBox Serversided, -som altså jeg har skrevet det, er umuligt! -så nej, det var ikke noget rod jeg skrev!
at sige msgbox ikke findes i asp er noget rod... asp er ikke noget sprog. msgbox findes i VBScript, men kan ikke bruges når det afvikles serverside.. men man kan lave den her istedet
strStreng = "iih, du godeste..." Response.Write "<script language=""VBScript"">"
If InStr(1, strString, "gode") Then Response.Write "MsgBox(""Det fandtes"")" Else Response.Write "MsgBox(""Nope"")" End If
Prøv evt. med Regular Expressions. Dette er generelt et stærkere værktøj, så snart dine tekstsøgninger bliver bare en smule specielle.
searchString = "Dette er en test med flere ord"
Set regEx = New RegExp regEx.Pattern = "test|flere|ord" regEx.IgnoreCase = True ' Ikke case sensetiv regEx.Global = True ' Søg i hele strengen
Set Matches = regEx.Execute(searchString) ' Lav søgning
'Sammensæt resultat For Each Match in Matches result = result & "Ord fundet på position " result = result & Match.FirstIndex & ". """ result = result & Match.Value & """<br>" Next response.write result
Lige umiddelbart ser der ud til, at alle ovenstående er "eller" sætninger. Altså - at bare et af ordene er i strengen, så er det fint. Det jeg har brug for, er en funktion, der tester på, om ALLE ordene er i strengen.
Function Soegning(SoegI, Soegetekst) If LEFT(Soegetekst, 1) = "[" AND RIGHT(Soegetekst, 1) = "]" Then TempSoegetekst = LEFT(Soegetekst, LEN(Soegetekst)-1) TempSoegetekst = RIGHT(TempSoegetekst, LEN(TempSoegetekst)-1) If InStr(1, LCase(SoegI), TempSoegetekst) Then boolResultat = True End If Else TempSoegetekst = Soegetekst If InStr(1, TempSoegetekst, " ") Then intSoegeord = 0 Do Until InStr(1, TempSoegetekst, " ") <= 0 If boolTempResultat = True OR intSoegeord <= 0 Then If InStr(1, LCase(SoegI), LEFT(TempSoegetekst, InStr(1, TempSoegetekst, " ")-1)) Then boolTempResultat = True Else boolTempResultat = False End If End If TempSoegetekst = RIGHT(TempSoegetekst, LEN(TempSoegetekst)-InStr(1, TempSoegetekst, " ")) intSoegeord = intSoegeord + 1 Loop If boolTempResultat = True OR intSoegeord <= 0 Then If InStr(1, LCase(SoegI), TempSoegetekst) Then boolTempResultat = True Else boolTempResultat = False End If End If If boolTempResultat = True Then boolResultat = True End If Else If InStr(1, LCase(SoegI), Soegetekst) Then boolResultat = True End If End If End If soegning = boolResultat End Function
??? hvad er det lige du laver??? -Det spørgsmålet gik ud på var:
Jeg skal tjekke om en sterng indeholder flere ord. Disse komme ikke nødvendigvis i rækkefølge.
Eks.: Indeholder strengen: "Dette er en test streng" både: "er" og "test"
og det er nøjagtig det jeg svarede på...! Og at du så pludselig ligger mere oven i spørgsmålet, kan jeg sq da ik' tage mig af! - så tag lige og overvej en gang til om hvem der skal ha' pointsne!
Rune>> Hvorhenne er det du svarer brugbart på spørgsmålet. Så vidt jeg kan se opfylder dine svar ikke mine krav. I alt det du skriver her tester du jo kun på et af ordene. Du tester ikke nogle steder på om BÅDE "er" OG "test" er i den streng som jeg gennemsøger. Så jeg kan sq da ikke gøre for at du ikke har læst spørgsmålet.
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.