通过将输入字符串拆分为单词然后拆分为 VB.net 中的字符,从输入字符串生成代码

Code generation from Input String by splitting it into words and subsequently into characters in VB.net

我正在尝试在 VB.net 中编写一个代码片段,它选择字符串中每个单词的第一个字母表并将它们连接起来。例如 - "Concepts Of Computer Programming" 应该产生 "COCP" 作为输出。虽然我熟悉 "myString.ToCharArray" 和 "string.Split" 函数,但仍然无法构建合适的逻辑。请帮助我。

您可以使用 String.Split 以空格分隔每个单词(不处理逗号、分号、点等,只处理空格、制表符和换行符)。然后你可以使用 String.Concat 来连接你可以用 Enumerable.Select:

提取的每个字符
string text = "Concepts Of Computer Programming";
string[] words = text.Split(new char[]{}, StringSplitOptions.RemoveEmptyEntries); // tabs, spaces, new-lines
var firstChars = words.Select(w => w[0]);
string result = String.Concat( firstChars );

如果您想包括其他分隔符,您可以明确指定它们:

char[] wordSeparators = = new[] { ' ','\t', ',', '.', '!', '?', ';', ':' };
string[] words = text.Split(wordSeparators, StringSplitOptions.RemoveEmptyEntries);
// ...

VB.NET(第一个片段):

Dim text = "Concepts Of Computer Programming"
Dim words = text.Split(new char(){}, StringSplitOptions.RemoveEmptyEntries)
dim firstChars = from w in words Select w(0)
dim result = String.Concat( firstChars )

你也可以使用这个:

        Dim Final As String = Nothing
    Dim input As String = "Concepts Of Computer Programming"
    For Each word As String In input.Split(" ")
        Final = (Final & word(0))
    Next

我使用 vb.net 的时间不长,也是不久前才开始学习的,所以我的方法与某些人相比可能是业余的,但它完成了工作。

您甚至可以将其设置为如下函数:

    Public Function gather_initials(ByRef input As String) As String
    Dim Final As String = Nothing
    For Each word As String In input.Split(" ")
        Final = (Final & word(0))
    Next
    Return Final
End Function

并这样称呼它:

Dim ret As String = gather_initials("Concepts Of Computer Programming")