| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1012 人关注过本帖
标题:关于VB中正则表达式的问题
只看楼主 加入收藏
xykz
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2008-6-11
收藏
 问题点数:0 回复次数:3 
关于VB中正则表达式的问题
Function TestRegExp(myPattern As String, myString As String)
Dim objRegExp As RegExp
Dim objMatch As Match
Dim colMatches  As MatchCollection
Dim RetStr As String
Set objRegExp = New RegExp
objRegExp.Pattern = myPattern
objRegExp.IgnoreCase = True
objRegExp.Global = True
If (objRegExp.Test(myString) = True) Then
Set colMatches = objRegExp.Execute(myString)
For Each objMatch In colMatches
——————————————————
怎么在这个位置加入一个循环,把
objmatch.value返回的值写入一个数组呢?

——————————————————
Next
Else
RetStr = "String Matching Failed"
End If
TestRegExp = RetStr
End Function
搜索更多相关主题的帖子: 正则表达式 
2008-06-12 14:29
hxfly
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:5810
专家分:118
注 册:2005-4-7
收藏
得分:0 
Private Sub Command1_Click()
For i = 0 To UBound(TestRegExp("is.", "IS1 is2 IS3 is4")) - 1
MsgBox TestRegExp("is.", "IS1 is2 IS3 is4")(i)
Next
End Sub
Function TestRegExp(myPattern As String, myString As String)

Dim reVal As String
reVal = ""
Dim objRegExp As RegExp
Dim objMatch As Match
Dim colMatches  As MatchCollection
Dim RetStr As String
Set objRegExp = New RegExp
objRegExp.Pattern = myPattern
objRegExp.IgnoreCase = True
objRegExp.Global = True
If (objRegExp.Test(myString) = True) Then
Set colMatches = objRegExp.Execute(myString)
For Each objMatch In colMatches
reVal = reVal & objMatch.Value & vbCrLf
Next
Else
RetStr = "String Matching Failed"
End If

tt = Split(reVal, vbCrLf)
TestRegExp = tt
End Function

2008-06-12 17:29
jxyga111
Rank: 8Rank: 8
来 自:中華人民共和國
等 级:贵宾
威 望:33
帖 子:6015
专家分:895
注 册:2008-3-21
收藏
得分:0 
學習
2008-06-12 17:29
hxfly
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:5810
专家分:118
注 册:2005-4-7
收藏
得分:0 
基本原理就是把寻找到的匹配用特殊符号合成字符串,想要数组就再用那个特殊符号进行分割。

或者是定义一个大的数组,把每个符合条件的匹配赋值给数组,这样做的缺点是数组维数问题。定义小了不行,定义大了浪费,如果根据匹配结果定义数组的维数,可能需要两次例遍结果集合。

2008-06-12 18:11
快速回复:关于VB中正则表达式的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016487 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved