如何在字符串中查找数字句子

时间:2011-02-08 17:13:16

标签: vb.net

如何查找字符串数据中的句子数?

编辑:好的我按照Wipqozn的方法

后想出了这个
Dim str As String = "This . is .  a . text."
Dim maxCount As Integer = str.Count
Dim intSent As Integer = 1
Dim singleChar As Char

For i = 1 To maxCount
    singleChar = str.Chars(i)          ' Getting an error here
    If singleChar = "." Then
        intSent = intSent + 1
    End If
Next

MsgBox("Number of sentence = " & intSent)

enter image description here

3 个答案:

答案 0 :(得分:0)

解析字符串数据,使用你决定终止“句子”作为分割器(可能是多个字符,如句点或感叹号),然后计算返回数组中的段。

编辑: 通过以下link了解如何在VB.net中使用正则表达式:

然后使用这个正则表达式:

@"(\S.+?[.!?])(?=\s+|$)"

在C#演示时,here

答案 1 :(得分:0)

编辑2:将Dim maxCount设置为Integer = str.Count-1。通过与下面提到的相同的表示法,因为数组从0开始,所以它以str.Count-1结束。所以你要检查的最后一个元素是str.Count-1,而不是str.Count。

编辑:我相信你在singleChar = str.Chars(i)的错误是因为你设置i = 1。除非我弄错了,否则数组在BASIC中初始化为'0'(这是一个字符串)。所以第一个字符实际上是str.Chars(0)而不是str.Char(1)。此外,当您收到错误时,您应该在问题中发布错误。让我们更容易理解并帮助您解决问题=)

Here.这就是你检查字符串的每个字符的方法。您需要使用循环来遍历并检查字符串的每个元素,将其与一些预定义的值(由您预定义)进行比较,以指示句子的开始(或结束)。

答案 2 :(得分:0)

如果您所做的只是计算期间,您可以使用

  

str.Split(New Char(){“。”c})。长度-1