0

你能帮我找一个合适的外壳吗,我有这个代码......

 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

我的代码只会像这样输出“McDonalds”是你输入“mc~donalds”现在我的问题是我输入“evalue”,我的输出必须是“eValue”

4

1 回答 1

0

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

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
于 2013-01-22T10:15:14.343 回答