Avatar billede webhelpers Praktikant
08. maj 2003 - 22:32 Der er 8 kommentarer og
1 løsning

Fjernelse af en del af et tekststreng

Hejsa
Jeg sidder og roder med et salgssystem, hvor varer lægges i en tabel adskilt med komma, altså feltet "Vare" i databasen indeholder fx en record som følger "vare1, vare23, vare28"

Jeg skal have lavet det sådan, at man kan fjerne en del af tekststrengen. Altså hvis man fx skal have fjernet vare23 fra "vare1, vare23, vare28". Og så tænkte jeg om der findes en funktion, der kan fjerne en del af en tekststreng....?
Avatar billede eagleeye Praktikant
08. maj 2003 - 22:44 #2
Men hvis du har en komma liste kan du overveje split som kan dele en streng i et array og så dele ved ,

vare = "vare1, vare23, vare28"

vareArr = Split(vare, ",")

fjern = "vare23"

for inx1 = 0 to UBound(vareArr)
  dublet = false
  if Trim(vareArr(inx1)) = Trim(fjern) then
    dublet = true
  end if
  if not dublet then
    nyVareList = nyVareList & vareArr(inx1)
    if inx1 < UBound(vareArr) then
      nyVareList = nyVareList & ","
    end if
  end if
next
vare = nyVareList

Response.Write vare
Avatar billede eagleeye Praktikant
08. maj 2003 - 22:45 #3
det skal så lige være:

vare = "vare1, vare23, vare28"

vareArr = Split(vare, ",")

fjern = "vare23"

nyVareList = ""
for inx1 = 0 to UBound(vareArr)
  dublet = false
  if Trim(vareArr(inx1)) = Trim(fjern) then
    dublet = true
  end if
  if not dublet then
    nyVareList = nyVareList & vareArr(inx1)
    if inx1 < UBound(vareArr) then
      nyVareList = nyVareList & ","
    end if
  end if
next
if nyVareList <> "" then vare = nyVareList

Response.Write vare
Avatar billede webhelpers Praktikant
08. maj 2003 - 22:48 #4
eagleeye>

synes ikke rigtig jeg kan få det til at hænge sammen.
det jeg ønsker at kunne sige:
remove strNavn From strText

således den fx fjerner "vare1," fra "vare1,vare23,vare28"

måske du kan komme med et eks?
Avatar billede webhelpers Praktikant
08. maj 2003 - 22:49 #5
arh, jeg kigger lige på det!
Avatar billede webhelpers Praktikant
08. maj 2003 - 22:58 #6
Det virker sgu!
bortset fra, at den ikke fjerner komma som står til venstre for varen, hvis ikke det er den første vare i linien. er det noget du umiddelbart kender løsningen på ?
Avatar billede webhelpers Praktikant
08. maj 2003 - 23:04 #7
men det er sgu' ok
du får pointsene
jeg finder selv ud af det sidste
tak for hjælpen
Avatar billede eagleeye Praktikant
08. maj 2003 - 23:07 #8
Den får lige det sidste komma med. Prøv med dette:

vare = "vare1, vare23, vare28"

vareArr = Split(vare, ",")

fjern = "vare28"

nyVareList = ""
for inx1 = 0 to UBound(vareArr)
  dublet = false
  if Trim(vareArr(inx1)) = Trim(fjern) then
    dublet = true
  end if
  if not dublet then
    nyVareList = nyVareList & vareArr(inx1)
    if inx1 < UBound(vareArr) then
      nyVareList = nyVareList & ","
    end if
  end if
next
if Right(nyVareList,1) = "," then  nyVareList = Left(nyVareList,len(nyVareList)-1)
if nyVareList <> "" then vare = nyVareList

Response.Write vare
Avatar billede webhelpers Praktikant
08. maj 2003 - 23:11 #9
det virker.
takker
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