@techjunkie - doesn't seem to work?
Code: Select all
Procedure.s CapString(st.s)
For i= 1 To FindString(st.s, " ", 1) + 1
temp.s = temp.s + UCase(Left(StringField(st.s, i, " "), 1)) + LCase(Mid(StringField(st.s, i, " "), 2, Len(StringField(st.s, i, " ")))) + " "
Next
ProcedureReturn Mid(temp.s, 1, Len(temp.s) - 1)
EndProcedure
Procedure.s CapString2(st.s)
For i= 1 To FindString(st.s, " ", 1) + 1
temp.s = temp.s + UCase(Left(StringField(st.s, i, " "), 1)) + LCase(Mid(StringField(st.s, i, " "), 2, Len(StringField(st.s, i, " ")))) + " "
Next
ProcedureReturn temp.s
EndProcedure
string.s = "the QUICK bRoWn fOx jUMPs ovER thE Lazy dog."
Debug CapString(string)
Debug CapString2(string)
That's using both of your procedures. Cuts off at "jumps".