FirstChar = Grossbuchstabe
Verfasst: 31.10.2005 05:05
wie kann ich es machen, dass der erste buchstabe eines wortes mit nem grossem zeichen beginnt?? also sowat in der art UCFirst(satz.s)
Code: Alles auswählen
Procedure.s ucfirst (string.s) ; Erster Buchstabe gross darstellen.
For x=1 To Len(string.s)
If Mid(string.s,x,1)<>Chr(32)
BrkPos.l=x
Break
EndIf
Next x
ersterteil.s=UCase(Mid(String.s,1,BrkPos.l))
zweiterteil.s=Mid(String.s,BrkPos.l+1,len(string.s)-BrkPos.l)
ProcedureReturn ersterteil.s+zweiterteil.s
EndProcedure
Code: Alles auswählen
Procedure.s ucfirst(String$)
ersterteil.s = LTrim(String$)
ProcedureReturn Space(Len(String$) - Len(ersterteil)) + UCase(Left(ersterteil, 1)) + Right(ersterteil, Len(ersterteil) - 1)
EndProcedure
Debug ucfirst(" hallo!")
Code: Alles auswählen
Procedure.s UCaseFirst(str.s)
Protected result.s
result = str
PokeB(@result, Asc(UCase(PeekS(@result, 1))))
ProcedureReturn result
Endprocedure
Code: Alles auswählen
string.s = "hallo welt"
Procedure.s UCaseFirst(str.s)
Protected result.s
result = str
PokeB(@result, Asc(UCase(PeekS(@result, 1))))
ProcedureReturn result
EndProcedure
Procedure.s ucfirst(String$)
ersterteil.s = LTrim(String$)
ProcedureReturn Space(Len(String$) - Len(ersterteil)) + UCase(Left(ersterteil, 1)) + Right(ersterteil, Len(ersterteil) - 1)
EndProcedure
Debug "Bitte warten..."
start = ElapsedMilliseconds()
For i = 1 To 10000000
str.s = ucfirst(string)
Next
Debug "crossroads - Procedure: " + Str(ElapsedMilliseconds() - start) + " ms"
start = ElapsedMilliseconds()
For i = 1 To 10000000
ersterteil.s = LTrim(string)
str.s = Space(Len(string) - Len(ersterteil)) + UCase(Left(ersterteil, 1)) + Right(ersterteil, Len(ersterteil) - 1)
Next
Debug "crossroads - direkt: " + Str(ElapsedMilliseconds() - start) + " ms"
start = ElapsedMilliseconds()
For i = 1 To 10000000
s.s = UCaseFirst(string)
Next
Debug "Froggerprogger - Procedure: " + Str(ElapsedMilliseconds() - start) + " ms"
start = ElapsedMilliseconds()
For i = 1 To 10000000
s.s = UCase(Chr(PeekB(string))) + Right(string,Len(string)-1)
Next
Debug "Rob - direkt: " + Str(ElapsedMilliseconds() - start) + " ms"
start = ElapsedMilliseconds()
For i = 1 To 10000000
PokeB(@string, Asc(UCase(PeekS(@string, 1))))
Next
Debug "Froggerprogger - direkt: " + Str(ElapsedMilliseconds() - start) + " ms"
strong.s = "hallo welt"
start = ElapsedMilliseconds()
For i = 1 To 10000000
PokeB(strong, UCase(Chr(PeekB(strong))))
Next
Debug "Rob 2 - direkt: " + Str(ElapsedMilliseconds() - start) + " ms"
strung.s = "hallo welt"
start = ElapsedMilliseconds()
For i = 1 To 10000000
PokeB(strung, PeekB(strung)-32)
Next
Debug "Rob 3 - direkt: " + Str(ElapsedMilliseconds() - start) + " ms"
Code: Alles auswählen
PokeB(string, PeekB(string)-32)
Code: Alles auswählen
start = ElapsedMilliseconds()
For i = 1 To 10000000
PokeB(strung, PeekB(strung)+32)
Next
Debug "Rob 3 - direkt: " + Str(ElapsedMilliseconds() - start) + " ms"
Code: Alles auswählen
string.s = "hallo welt"
PokeB(string, PeekB(string)-32)
Debug string
Programm hat geschrieben:crossroads - Procedure: 13920 ms
crossroads - direkt: 10354 ms
Froggerprogger - Procedure: 11707 ms
Rob - direkt: 4947 ms
Froggerprogger - direkt: 511 ms
Rob 2 - direkt: 431 ms
Rob 3 - direkt: 120 ms
Code: Alles auswählen
string.s = "hallo welt"
#MaxD = 10000000
Procedure.s UCaseFirst(str.s)
Protected Result.s
Result = str
PokeB(@Result, Asc(UCase(PeekS(@Result, 1))))
ProcedureReturn Result
EndProcedure
Procedure.s ucfirst(String$)
ersterteil.s = LTrim(String$)
ProcedureReturn Space(Len(String$) - Len(ersterteil)) + UCase(Left(ersterteil, 1)) + Right(ersterteil, Len(ersterteil) - 1)
EndProcedure
start = ElapsedMilliseconds()
For i = 1 To #MaxD
str.s = ucfirst(string)
Next
text.s = "crossroads - Procedure: " + Str(ElapsedMilliseconds() - start) + " ms" + #CRLF$
start = ElapsedMilliseconds()
For i = 1 To #MaxD
ersterteil.s = LTrim(string)
str.s = Space(Len(string) - Len(ersterteil)) + UCase(Left(ersterteil, 1)) + Right(ersterteil, Len(ersterteil) - 1)
Next
text + "crossroads - direkt: " + Str(ElapsedMilliseconds() - start) + " ms" + #CRLF$
start = ElapsedMilliseconds()
For i = 1 To #MaxD
s.s = UCaseFirst(string)
Next
text + "Froggerprogger - Procedure: " + Str(ElapsedMilliseconds() - start) + " ms" + #CRLF$
start = ElapsedMilliseconds()
For i = 1 To #MaxD
s.s = UCase(Chr(PeekB(string))) + Right(string,Len(string)-1)
Next
text + "Rob - direkt: " + Str(ElapsedMilliseconds() - start) + " ms" + #CRLF$
start = ElapsedMilliseconds()
For i = 1 To #MaxD
PokeB(@string, Asc(UCase(PeekS(@string, 1))))
Next
text + "Froggerprogger - direkt: " + Str(ElapsedMilliseconds() - start) + " ms" + #CRLF$
string.s = "hallo welt"
start = ElapsedMilliseconds()
For i = 1 To #MaxD
PokeB(string, UCase(Chr(PeekB(string))))
Next
text + "Rob 2 - direkt: " + Str(ElapsedMilliseconds() - start) + " ms" + #CRLF$
string.s = "hallo welt"
start = ElapsedMilliseconds()
For i = 1 To #MaxD
PokeB(string, PeekB(string)-32)
Next
text + "Rob 3 - direkt: " + Str(ElapsedMilliseconds() - start) + " ms" + #CRLF$
MessageRequester("Ergebnisse", text)
SetClipboardText(text)