gpt4 book ai didi

vb.net - 将字符从小写转换为大写,反之亦然 VB.Net

转载 作者:行者123 更新时间:2023-12-04 23:51:21 26 4
gpt4 key购买 nike

四处搜索,找不到答案。

我的任务是将字符串大写转换为小写或大写,然后将它们轮换。

例如:-输入:-“HeLlO”和输出:-“hElLo”

我知道我需要使用 for 循环,但无法弄清楚如何遍历每个字符,检查大小写并在需要时切换它。

我可以创建一个 for 循环来计算并显示单个字符或一个简单的 If 语句将整个字符串转换为 Upper 或 lower 但如果我尝试将 2 组合起来,我的逻辑就无法正常工作。

任何人都可以帮忙吗?

最佳答案

这是一种简单的方法:

Public Function InvertCase(input As String) As String
Dim output As New StringBuilder()
For Each i As Char In input
If Char.IsLower(i) Then
output.Append(Char.ToUpper(i))
ElseIf Char.IsUpper(i) Then
output.Append(Char.ToLower(i))
Else
output.Append(i)
End If
Next
Return output.ToString()
End Function

它只是遍历原始字符串中的每个字符,检查它是什么情况,修复它,然后将该固定字符附加到一个新字符串(通过 StringBuilder 对象)。

正如 Neolisk 在下面的评论中建议的那样,您可以通过创建另一种转换单个字符的方法来使其更清晰,如下所示:
Public Function InvertCase(input As Char) As Char
If Char.IsLower(input) Then Return Char.ToUpper(input)
If Char.IsUpper(input) Then Return Char.ToLower(input)
Return input
End Function

Public Function InvertCase(input As String) As String
Dim output As New StringBuilder()
For Each i As Char In input
output.Append(InvertCase(i))
Next
Return output.ToString()
End Function

InvertCase(Char) 使用相同的函数,您也可以使用 LINQ,如下所示:
Public Function InvertCase(input As String) As String
Return New String(input.Select(Function(i) InvertCase(i)).ToArray())
End Function

关于vb.net - 将字符从小写转换为大写,反之亦然 VB.Net,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21334274/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com