使用Visual Basic删除单词的第一个字母
Delete first letter of the words using visual basic
我有一个代码,可以把单词的最后一个字母变成点。我需要如何,如何更改代码,所以当我写一些单词时,在输出中我会得到没有首字母的单词?
例如:
- 输入:
Hello,how are you?
- 输出:
ello, ow re ou?
这是我的代码:
Sub New5
dim s, ns as String
dim r as String
s = inputbox("Input text")
r = "Inputed text:" & chr(9) & s & chr(13)
for i = 2 to len(s)
if mid(s,i,1)=" " then ns = ns + "." else ns = ns + mid(s,i-1,1)
next i
ns = ns + "."
r = r & "Result of work:" & chr(9) & ns
MsgBox r
End Sub
抱歉,刚刚看到它被标记为 vb6。这是一个 vb.net 答案。
要想去除每个单词的首字母,首先要做的就是获取单词。 String.Split
将 return 一个基于您提供的拆分字符的数组。在这种情况下,该字符是 space。字符串后面的小 c
告诉编译器这是 Char
.
现在我们可以遍历每个单词并切掉第一个字母。我将缩短的单词存储在 List(Of String)
中。您可以通过使用 Substring
传递起始索引来摆脱第一个字母。我们想从第二个字母开始,所以我们传递 1
。索引从第一个字母 0
开始。
最后,使用 String.Join
将所有内容重新组合在一起。
Chr
、Len
、Mid
和 MsgBox
都是 VB6 的遗留物。它们用于向后兼容,但学习 .net 类 功能是个好主意。
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
New5()
End Sub
Private Sub New5()
Dim input = InputBox("Input text")
Dim words = input.Split(" "c)
Dim ShortWords As New List(Of String)
For Each word In words
ShortWords.Add(word.Substring(1))
Next
Dim shortenedString = String.Join(" ", ShortWords)
MessageBox.Show(shortenedString)
End Sub
对于 VB6:
Private Sub Convert()
Dim strIn as string
Dim strA() As String
Dim strOut As String
Dim iX As Integer
strIn - "Hello, how are you?"
strA = Split(strIn, " ")
For iX = 0 To UBound(strA)
strA(iX) = Mid$(strA(iX), 2)
Next
strOut = Join(strA, " ")
End Sub
顺便说一句,您的 libreoffice 标签也不合适,因为 LibreOffice 不使用与 vb6 或 vba.
相同的语言
我有一个代码,可以把单词的最后一个字母变成点。我需要如何,如何更改代码,所以当我写一些单词时,在输出中我会得到没有首字母的单词?
例如:
- 输入:
Hello,how are you?
- 输出:
ello, ow re ou?
这是我的代码:
Sub New5
dim s, ns as String
dim r as String
s = inputbox("Input text")
r = "Inputed text:" & chr(9) & s & chr(13)
for i = 2 to len(s)
if mid(s,i,1)=" " then ns = ns + "." else ns = ns + mid(s,i-1,1)
next i
ns = ns + "."
r = r & "Result of work:" & chr(9) & ns
MsgBox r
End Sub
抱歉,刚刚看到它被标记为 vb6。这是一个 vb.net 答案。
要想去除每个单词的首字母,首先要做的就是获取单词。 String.Split
将 return 一个基于您提供的拆分字符的数组。在这种情况下,该字符是 space。字符串后面的小 c
告诉编译器这是 Char
.
现在我们可以遍历每个单词并切掉第一个字母。我将缩短的单词存储在 List(Of String)
中。您可以通过使用 Substring
传递起始索引来摆脱第一个字母。我们想从第二个字母开始,所以我们传递 1
。索引从第一个字母 0
开始。
最后,使用 String.Join
将所有内容重新组合在一起。
Chr
、Len
、Mid
和 MsgBox
都是 VB6 的遗留物。它们用于向后兼容,但学习 .net 类 功能是个好主意。
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
New5()
End Sub
Private Sub New5()
Dim input = InputBox("Input text")
Dim words = input.Split(" "c)
Dim ShortWords As New List(Of String)
For Each word In words
ShortWords.Add(word.Substring(1))
Next
Dim shortenedString = String.Join(" ", ShortWords)
MessageBox.Show(shortenedString)
End Sub
对于 VB6:
Private Sub Convert()
Dim strIn as string
Dim strA() As String
Dim strOut As String
Dim iX As Integer
strIn - "Hello, how are you?"
strA = Split(strIn, " ")
For iX = 0 To UBound(strA)
strA(iX) = Mid$(strA(iX), 2)
Next
strOut = Join(strA, " ")
End Sub
顺便说一句,您的 libreoffice 标签也不合适,因为 LibreOffice 不使用与 vb6 或 vba.
相同的语言