Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: Visual Basic
Expertise: Beginner
Jul 16, 1999



Building the Right Environment to Support AI, Machine Learning and Deep Learning

A Better Use for StrConv

When using proper names, you sometimes need to capitalize the first letter of each word. For example, you need to convert "john smith" into "John Smith." With VB3, you had to write a custom function to do the job; VB4's versatile StrConv routine, on the other hand, lets you do it with one statement:

properName = StrConv(text, vbProperCase)

However, be aware that this variant of StrConv also forces a conversion to lowercase for all the characters not at the beginning of a word. In other words, "seattle, USA," is converted to "Seattle, Usa," which you don't want. You still need to write a custom routine, but you can take advantage of StrConv to reduce the amount of code in it:

Function ProperCase(text As String) As String
	Dim result As String, i As Integer
	result = StrConv(text, vbProperCase)
	' restore all those characters that
	' were uppercase in the original string
	For i = 1 To Len(text)
		Select Case Asc(Mid$(text, i, 1))
		Case 65 To 90		' A-Z
			Mid$(result, i, 1) = Mid$(text, i, 1)
		End Select
	ProperCase = result
End Function
Francesco Balena
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date