Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: VB7
Expertise: Intermediate
Aug 18, 2003

PluralToSingular - Converting the input word from plural to singular

' Convert the input word from plural to singular
Function PluralToSingular(ByVal plural As String) As String
    ' convert to lowercase for easier comparison
    Dim lower As String = plural.ToLower()
    Dim res As String

    ' rule out a few exceptions
    If lower = "feet" Then
        res = "Foot"
    ElseIf lower = "geese" Then
        res = "Goose"
    ElseIf lower = "men" Then
        res = "Man"
    ElseIf lower = "women" Then
        res = "Woman"
    ElseIf lower = "criteria" Then
        res = "Criterion"

        ' plural uses "ies" if word ends with "y" preceeded by a non-vowel
    ElseIf lower.EndsWith("ies") AndAlso "aeiou".IndexOf(lower.Substring _
        (lower.Length - 4, 1)) < 0 Then
        res = plural.Substring(0, plural.Length - 3) + "y"
    Else
        res = plural.Substring(0, plural.Length - 1)
    End If

    ' the result must preserve the original word's capitalization
    If plural = lower Then
        Return res.ToLower()   ' it was an all-lowercase word
    ElseIf plural = plural.ToUpper() Then
        Return res.ToUpper()    ' it was an all-uppercase word
    Else
        Return res    ' return whatever is in "res"
    End If
End Function
Francesco Balena
 
Comment and Contribute

 

 

 

 

 


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

 

 

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