Vb.net 命名合适的外壳

Vb.net 命名合适的外壳,vb.net,naming-conventions,Vb.net,Naming Conventions,你能帮我弄一个合适的外壳吗, 我有这个密码 Private Function NameCsing(ByVal sValue As String) As String Dim toConvert As String() = sValue.Split(" ") Dim lst As New List(Of String) For i As Integer = 0 To toConvert.Length - 1 Dim converted As String

你能帮我弄一个合适的外壳吗, 我有这个密码

 Private Function NameCsing(ByVal sValue As String) As String
    Dim toConvert As String() = sValue.Split(" ")
    Dim lst As New List(Of String)

    For i As Integer = 0 To toConvert.Length - 1
        Dim converted As String = ""
        If toConvert(i).Contains("~") Then
            Dim toName As String() = toConvert(i).Split("~")
            Dim sName As String = ""
            For n As Integer = 0 To toName.Length - 1
                Dim sconvert As String = ""
                If n = 0 Then
                    sName = StrConv(toName(n), VbStrConv.ProperCase)
                Else
                    sName += StrConv(toName(n), VbStrConv.ProperCase)
                End If
            Next
            converted = sName
        Else
            converted = toConvert(i)
        End If
        lst.Add(converted)
    Next
    Dim ret As String = ""
    For i As Integer = 0 To lst.Count - 1
        If i = 0 Then
            ret = lst(0)
        Else
            ret += " " + lst(i)
        End If
    Next
    Return ret
End Function
我的代码会像这样输出“麦当劳”是你输入的“mc~donalds”
现在我的问题是,我输入“evalue”,我的输出必须是“evalue”

知道如何处理特殊字符串的唯一方法是自己从规则列表中对其进行编码:

Private Function NameCsing(ByVal sValue As String) As String
    If sValue.Trim.ToLower = "evalue" Then Return "eValue"
    'Then process any other special cases
End Function

为什么要将“evalue”转换为“evalue”?根据规则,输入字符串不应该是“e~value”吗?因为在规则中应该是“eValue”否,当我输入它“e~value”时,它将转换为eValue,因为我所有的转换都是正确的。是的,您是正确的,但您的代码中仍然没有将“eValue”设置为“eValue”的规则。程序为什么/如何决定何时将“evalue”字符串中的“value”一词“适当大小写”?是的,但不仅仅是evalue。。但是有些话。。怎样