以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  变量赋值  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=28400)

--  作者:明丰
--  发布时间:2013/1/28 12:07:00
--  变量赋值
给变量赋值,该值为任何单个字符,请问如何设置?
--  作者:lin_hailun
--  发布时间:2013/1/28 12:08:00
--  
 什么意思?你要做什么?
--  作者:明丰
--  发布时间:2013/1/28 12:13:00
--  

“DcBcBEF"

 

找出字符串ABAB型的词,如上面字符串的“cBcB”。请问如何设置?


--  作者:lin_hailun
--  发布时间:2013/1/28 12:39:00
--  
 用正则吧,自己去调整。

Dim data As String = "aababacdcdaa"
Dim catchs As New System.Text.RegularExpressions.Regex("([a-zA-Z0-9]{2})\\1+")
Dim mc As System.Text.RegularExpressions.MatchCollection = catchs.Matches(data)
msgbox(mc(0).Value)
msgbox(mc(1).Value)

--  作者:明丰
--  发布时间:2013/1/28 13:07:00
--  

如果是汉字或者其它符号,比如在帮助文档中,有重复多余词语,要找出来,请问如何设置?


--  作者:明丰
--  发布时间:2013/1/28 13:35:00
--  

Dim d As String = "ababcdcd"
If d IsNot Nothing Then
    For i As Integer = 0 To d.Length - 1
        If (i - 2) > 0 Then
            If d.Chars(i) = d.Chars(i-2) AndAlso d.Chars(i-1) = d.Chars(i-3) Then
                Messagebox.Show("连续重复的词语:" & d.Chars(i-3) & d.Chars(i-2) & d.Chars(i-3) & d.Chars(i-2))
            End If
        End If
    Next
End If

 

上面代码基本可以达到要求。


--  作者:lin_hailun
--  发布时间:2013/1/28 13:42:00
--  
 匹配中文

Dim data As String = "aababa你好你好哦你cdcdaa"
Dim catchs As New System.Text.RegularExpressions.Regex("([a-zA-Z0-9\\u4E00-\\u9FFF]{2})\\1+")
Dim mc As System.Text.RegularExpressions.MatchCollection = catchs.Matches(data)
msgbox(mc(0).Value)
msgbox(mc(1).Value)

--  作者:明丰
--  发布时间:2013/1/28 14:19:00
--  

其它符号如何设置?(如:“/?.*>[!)”,主要用于检查语句是否通顺)

 

谢谢!先收藏,再研究。

 

下面代码可以实现,但代码较长。

 

Dim d As String = "abab([([cdc123123d??4545你好你好"


Dim s As String = "AA" \'重复
\'Dim s As String = "ABAB"

\'Dim s As String = "ABcABc"

If d IsNot Nothing Then
    For i As Integer = 0 To d.Length - 1
        If s = "AA"
            If (i - 1) > 0 Then
                If d.Chars(i) = d.Chars(i-1) Then
                    Messagebox.Show("连续重复的词语:" & d.Chars(i-1) & d.Chars(i))
                End If
            End If
        ElseIf s = "ABAB"
            If (i - 2) > 0 Then
                If d.Chars(i) = d.Chars(i-2) AndAlso d.Chars(i-1) = d.Chars(i-3) Then
                    Messagebox.Show("连续重复的词语:" & d.Chars(i-3) & d.Chars(i-2) & d.Chars(i-3) & d.Chars(i-2))
                End If
            End If
        ElseIf s = "ABCABC" Then
            If (i - 4) > 0 Then
                If d.Chars(i) = d.Chars(i-3) AndAlso d.Chars(i-1) = d.Chars(i-4) AndAlso d.Chars(i-2) = d.Chars(i-5) Then
                    Messagebox.Show("连续重复的词语:" & d.Chars(i-5) & d.Chars(i-4) & d.Chars(i-3) & d.Chars(i-2) & d.Chars(i-1) & d.Chars(i))
                End If
            End If
        End If
    Next
End If


--  作者:lin_hailun
--  发布时间:2013/1/28 14:26:00
--  
 不明白什么意思?直接说你想实现什么吧?

 比如有哪些文字或者句子,要对这些句子做什么操作。