Archiv verlassen und diese Seite im Standarddesign anzeigen : String untersuchen
Mr-400-Volt
30.12.2006, 02:29
Hallo, ich möchte einen String auf doppelte einträge untersuchen, und den letzten der doppelten ersetzen. Also wie im Code aus 76552 eine 765R2 machen. Aber irgend etwas ist da falsch, aber was ???
Bitte um hilfe !!!
Danke !!!
A = "76552"
B = "R"
For X = 2 To 5
Y = X - 1
If Mid(a , Y , 1) = Mid(a , X , 1) Then
Mid(a , X , 1) = B
End If
Next
Upperline
Lcd B
Do
Loop
End 'end program
also wenn du nur gleiche, aufeinanderfolgende zeichen löschen willst, dann mach das doch über string-abbau und -aufbau.
etwa so
sOriginal = "72556"
cErsatz = "R"
cFirstCharOrig = ""
cLastCharNew = ""
iForEnd = Len(sOriginal)
sNewstring = ""
sNewstring = sNewstring & Left(sOriginal, 1)
sOriginal = Right(sOriginal, Len(sOriginal) - 1)
For ilauf = 1 To iForEnd - 1
cFirstCharOrig = Left(sOriginal, 1)
cLastCharNew = Right(sNewstring, 1)
If cFirstCharOrig = cLastCharNew Then cFirstCharOrig = cErsatz
sNewstring = sNewstring & cFirstCharOrig
sOriginal = Right(sOriginal, Len(sOriginal) - 1)
Range("a" & ilauf).Value = cFirstCharOrig
Range("B" & ilauf).Value = cLastCharNew
Next ilauf
falls du alle in der zeichenkette vorkommenden ab einem bestimmten ersetzen willst, bau den string ab und suche das weitere vorkommen in string.
schau dir mal die die funktionen
index(s,t)
Gsub(r,s,t)
sub
substr
an
die gibt es unter awk - evtl auch unter c
gruß
downad
Hallo Mr-400-Volt!
Ich glaube, dass "a" sollte "A" heissen und die "For" Schleife 5 mal durchlaufen soll, also für x=2 bis 6.
MfG
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.