Avatar billede borupborup Nybegynder
17. februar 2012 - 13:30 Der er 5 kommentarer

Smart måde at checke en string for 2 tegn

Hejsa.

Er der en smart måde at checke en string indholder et eks et - eller +


Har et specifikt problem med at

string'en må ikke være tom
string'en skal indeholde et "-" og et "+" tegn og intet andet.

Hjælp
Avatar billede softspot Forsker
17. februar 2012 - 13:44 #1
Jamen, det kan du da opnå således:

okstring = len(strengen) = 2 and (strengen = "-+" or strengen = "+-")


Dog har jeg lidt på fornemmelsen at dette ikke er hvad du mener :-)
Avatar billede softspot Forsker
17. februar 2012 - 13:44 #2
Faktisk kan det gøres endnu kortere:

okstring = strengen = "-+" or strengen = "+-"
Avatar billede borupborup Nybegynder
17. februar 2012 - 13:49 #3
Eksempel på hvad jeg mener



Altså jeg skal kunne checke for og en streng indeholde et + og et -, men må ikke inde holde flere + eller -
Avatar billede softspot Forsker
17. februar 2012 - 16:22 #4
Du kan benytte Instr til at tjekke om et tegn findes i en streng. Instr kan også bruges til at søge fra en position i strengen og fremad. Du kan således tjekke om et tegn findes mere end én gang:

cnt = 0
pos = instr(strengen, "+")
do while pos > 0
  cnt = cnt + 1
  if pos + 1 <= len(strengen) then
    pos = instr(pos + 1, strengen, "+")
  else
    pos = 0
  end if
loop

response.write cnt & " plusser i strengen<br>"


På samme måde kan du gøre med minusser. Jeg vil dog anbefale at lægge det i en funktion, som tager tegnet der skal optælles, som parameter :)

Alternativt kunne man lave et regulært udtryk som søger strengen igennem for et givet tegn, men den løsning kan jeg ikke lige ryste ud af ærmet pt.
Avatar billede mireigi Novice
09. marts 2012 - 15:42 #5
Den simpleste måde:

intPlusCount = Len(Split(strengen, "+")) - 1
intMinusCount = Len(Split(strengen, "-")) - 1
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester