/ Forside/ Teknologi / Udvikling / VB/Basic / Spørgsmål
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
Udskifte tegn via Replace?
Fra : crha
Vist : 721 gange
50 point
Dato : 04-10-05 20:48

Hej, jeg prøver at lave et program der kan udskifte hvert enkelt bogstav med et andet.

Den eneste måde jeg kender er følgende:

Tekst = text1.text
Tekst = Replace(Tekst, "E", "T")
MsgBox(Tekst)

Dette virker fint hvis man kun skal udskifte én tegn, MEN

Hvis jeg først udskifter E med T og senere i programmet udskifter T med Y, bliver E jo lavet til Y :/

Jeg håber virkelig jeg er til at forstå, og et svar til at løse dette vil være fantastisk!

På forhånd tak!

 
 
Kommentar
Fra : Eyvind


Dato : 04-10-05 21:11

Jeg har kun leget lidt med VB6 men ikke udskiftning af bogstaver.
Men kører du en lykke som eks. udskifter alle E'erne med T og bagefter alle T'erne med Y

Kommentar
Fra : crha


Dato : 04-10-05 22:25

Gør det på følgende måde

Tekst = Replace(Tekst, "E", "T")
Tekst = Replace(Tekst, "T", "Y")
osv.

Så hvis vi har teksten: "Det er godt" vil det i første omgang laves til "Dtt tr godt" men ved næste linie bliver det lavet til "Dyy tr gody"
hvor der efter hensigten skulle stå: "Dtt tr gody".


Kommentar
Fra : IBM760


Dato : 04-10-05 23:11

Hej crha,

er det så ikke et spøgsmål om, at bytte om på de 2 sætninger.

Tekst = Replace(Tekst, "T", "Y")
og så
Tekst = Replace(Tekst, "E", "T")

Mvh
Ivan


Accepteret svar
Fra : berpox

Modtaget 50 point
Dato : 05-10-05 10:41

Opret en form1 med Commandbutton1 og tekstfelt text1 - indsæt flg. kode - og du får erstattet teksten direkte i tekstfeltet ("e" med "t" og "t" med "y"

Kode
Dim text As String
Dim length As Integer
Dim hvor1, hvor2, soeg1, soeg2 As Variant
Private Sub Command1_Click()
length = Len(Text1.text)
Text1.SetFocus
For i = 0 To (length - 1)

soeg1 = "e"
soeg2 = "t"
hvor1 = InStr(Text1.text, soeg1) ' Find streng i text.
hvor2 = InStr(Text1.text, soeg2) ' Find streng i text.
If hvor1 Or hvor2 Then
Text1.SetFocus
Text1.SelStart = i + 1
Text1.SelLength = 1
If Text1.SelText = soeg1 Then Text1.SelText = "t"
If Text1.SelText = soeg2 Then Text1.SelText = "y"
End If

Next

End Sub

Private Sub Form_Initialize()
Text1.text = "Dette dyr er en and"
End Sub


mvh berpox

Kommentar
Fra : Eyvind


Dato : 05-10-05 12:41

Smart Berpox

Godkendelse af svar
Fra : crha


Dato : 05-10-05 17:04

Ser søreme ud til at være noget jeg kan bruge.. Mange tak ;)   

Kommentar
Fra : berpox


Dato : 05-10-05 21:19

Jamen velbekomme da - så håber jeg blot det er nøjagtigt så fantastisk som du forventede

mvh berpox

Du har følgende muligheder
Eftersom du ikke er logget ind i systemet, kan du ikke skrive et indlæg til dette spørgsmål.

Hvis du ikke allerede er registreret, kan du gratis blive medlem, ved at trykke på "Bliv medlem" ude i menuen.
Søg
Reklame
Statistik
Spørgsmål : 177577
Tips : 31968
Nyheder : 719565
Indlæg : 6409071
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste