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

私のコードは、この「マクドナルド」のように出力されます。「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 に答える