如何查找字符串数据中的句子数?
编辑:好的我按照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)
答案 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