Vb6 如何在vb中显示字数长度?

Vb6 如何在vb中显示字数长度?,vb6,Vb6,因此,我花了几个小时来研究如何在vb中显示字数长度。 例如,如果我在富文本框中键入一个句子,然后单击一个按钮,我希望显示一个表单,列出该句子中一个字母单词、两个字母单词、三个字母单词等的数量。当然,特定长度的字数将在标签中输出 我在网上找到了用于字数统计的短代码: dim wordcount as integer dim a as string() = RichText.Text.Split(" ") wordcount = a.length 但是,我不确定这段代码是否可以用来获取字数的长

因此,我花了几个小时来研究如何在vb中显示字数长度。 例如,如果我在富文本框中键入一个句子,然后单击一个按钮,我希望显示一个表单,列出该句子中一个字母单词、两个字母单词、三个字母单词等的数量。当然,特定长度的字数将在标签中输出

我在网上找到了用于字数统计的短代码:

dim wordcount as integer

dim a as string() = RichText.Text.Split(" ")

wordcount = a.length

但是,我不确定这段代码是否可以用来获取字数的长度。关于如何在标签中输出特定长度的字数,有什么想法吗?谢谢。

像这样的东西怎么样:

Private Sub mnuCount_Click()
    Const DELIMITERS As String = vbNewLine & " !"",.:;?"
    Dim WordCounts(1 To 100) As Long
    Dim Msg As String
    Dim I As Integer
    Dim WordCount As Long

    With RTB
        .Visible = False
        .SelStart = 0
        Do
            .UpTo DELIMITERS, vNegate:=True
            .Span DELIMITERS, vNegate:=True
            If .SelLength > 0 Then
                WordCounts(.SelLength) = WordCounts(.SelLength) + 1
                .SelStart = .SelStart + .SelLength
            Else
                Exit Do
            End If
        Loop
        .SelStart = 0
        .Visible = True
    End With

    Msg = "Length" & vbTab & "Count"
    For I = 1 To 100
        If WordCounts(I) > 0 Then
            Msg = Msg & vbNewLine _
                & CStr(I) & vbTab & CStr(WordCounts(I))
            WordCount = WordCount + WordCounts(I)
        End If
    Next
    Msg = Msg & vbNewLine _
        & "Grand total:" & vbNewLine _
        & vbTab & CStr(WordCount)
    MsgBox Msg
End Sub

普拉德尼亚的代码,翻译成VB6:

Option Explicit

Private Sub Command1_Click()
Dim str As String
Dim splitStr() As String
Dim i As Integer

str = "ABC DEF GHIJ KLMNOPQ"
splitStr = Split(str, " ")
MsgBox "Number of words = " & UBound(splitStr) + 1 & vbCrLf & _
       "Average Length = " & Len(Replace(str, " ", "")) / (UBound(splitStr) + 1)
End Sub
我也做了一些简化。没有必要通过循环来获得平均值。要得到整个数组的长度,只需删除空格并除以数组中的元素数


但是,如果您想获得每个长度的字数,则必须循环遍历数组,获取每个字数的长度并逐个存储这些值。最好的方法是设置对scrrun.dll Windows脚本运行时的引用,并使用Dictionary对象存储值。

欢迎使用stackoverflow。首先,请编辑您的帖子以正确设置代码格式。第二,你不确定代码是否可以使用是什么意思?这对你不管用吗?它是如何失败的?你描述的问题越具体,你得到的答案就越好。在我的表单中,我有一个选项,允许用户确定文本中的字数,换句话说,字数。用户在一个富文本框中键入内容,单击一个按钮后,一个消息框会显示一个包含字数的标签。上面的代码非常适用于此。我遇到的问题是字数的长度。如何确定文本中有多少特定长度的单词,然后将它们显示在标签中?上述代码是否可以与其他代码一起使用以实现此目的?谢谢。我建议你读一读,看看我写你的代码格式时的意思。不,你发布的代码不计算每种长度的字数。它只返回字数-忽略每个单词的长度。如果要计算每种长度的单词数,请在调用Split后遍历a中的数组元素,并计算每个元素中的字母数,然后将这些计数存储在另一个数组中。运行您发布的代码应该清楚地说明它返回了什么,而无需在此处询问。首先,至少花一点力气自己把事情弄清楚是很有用的。