Avatar billede bobbedude Nybegynder
18. september 2012 - 11:28 Der er 13 kommentarer og
1 løsning

hvis der er 1 - i en streng eller 2- ellers

Jeg har en streng og i den kan der være 1 - eller 2 - eller ingen hvordan checker jeg om det er det ene eller andet så jeg kan lave en if else med det ?
Avatar billede claes57 Ekspert
18. september 2012 - 11:36 #1
if str = "1" then

elseif str = "2" then

else  'alle andre

end if
Avatar billede bobbedude Nybegynder
18. september 2012 - 11:37 #2
claes57 - Jo det er nemt nok men jeg skal jo først finde ud af hvor mange - der er i den streng der kommer.
Avatar billede claes57 Ekspert
18. september 2012 - 11:41 #3
har du et eksempel på en streng?
du kan ret hurtigt optælle antal "1" i "0123het012hgt012" ved at du laver en ny streng, hvor du replacer "1" med "" og så trækker længden af den streg fra den oprindeliges længde.
Avatar billede bobbedude Nybegynder
18. september 2012 - 11:54 #4
xxx-xxx-xx
xxxxx-xxxxx
xx-xx-xx
xxx-xxxxx-xx

x = tal eller bogstav
Avatar billede softspot Forsker
18. september 2012 - 11:59 #5
Og det er altså bindestreger der skal findes (kommunikation er en svær en :-))...

Du kan nok finde mange løsninger på det problem. Et kunne være at benytte instr og så iterere igennem strengen indtil der ikke kan findes flere:

antal = 0
pos = 1
do
  pos = instr(pos, streng, "-")
  if pos > 0 then antal = antal + 1
loop while pos > 0

Totalt utestet, men noget i den stil.
Avatar billede claes57 Ekspert
18. september 2012 - 12:01 #6
og skal du bare finde ud af, om "1" optræder i en streng?

if instr(str,"1") > 0 & instr(str,"2") > 0 then
' der er både "1" og "2" i str

elseif instr(str,"1") > 0 then
' der er "1" i str, men ingen "2"

elseif instr(str,"2") > 0 then
' der er "2" i str, men ingen "1"

else
'der er hverken "1" eller "2" i str

end if
Avatar billede claes57 Ekspert
18. september 2012 - 12:05 #7
jf #5 - det vender jo spg noget.
jeg vil så stadig bruge replace.

' antal bindestreger i str
antal = len(str) - len(replace(str,"-",""))
Avatar billede softspot Forsker
18. september 2012 - 12:14 #8
Claes, det er da en fiks måde, så det ville jeg nok også gøre :)
Avatar billede bobbedude Nybegynder
18. september 2012 - 12:24 #9
Jeg ved ikke man kunne også lave et split og loope gennem lidt som softspot siger.
Avatar billede softspot Forsker
18. september 2012 - 12:31 #10
Jo, men skulle du ikke bare vide hvormange bindestreger der er?
Avatar billede bobbedude Nybegynder
18. september 2012 - 12:34 #11
Jo
Avatar billede bobbedude Nybegynder
18. september 2012 - 12:40 #12
smid svar begge to
Avatar billede softspot Forsker
18. september 2012 - 12:47 #13
:-)
Avatar billede claes57 Ekspert
18. september 2012 - 13:03 #14
lige meget...
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