vb.net正则匹配 vba正则表达式匹配数字

vb.net2008中怎样用正则表达式匹配多个结果

既然解决了,来收分吧。

成都创新互联-专业网站定制、快速模板网站建设、高性价比维西网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式维西网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖维西地区。费用合理售后完善,十余年实体公司更值得信赖。

顺便说下,如果用Matches方法,再遍历结果,效果和用Match再NextMatch类似。

vb.net正则表达式

Imports System.Text.RegularExpressions

Public Class Form1

Public Function MadeRegexArray(ByVal strText As String, ByVal strRegx As String, ByVal rexOpt As RegexOptions, ByVal Groups As Integer) As String()

REM 正则结果直接以字符串组形式返回

REM strHtml待搜索的字符串

REM strRegx正则表达式

REM rexOpt正则选项

On Error Resume Next

Return MadeMatchString(MadeRegexMatch(strText, strRegx, rexOpt), Groups)

End Function

Public Function MadeMatchString(ByVal mc As MatchCollection, ByVal Groups As Integer) As String()

REM 把MatchCollection以字符串组形式保存

REM mc正则匹配的集合

REM 返回字符串组

On Error Resume Next

Dim strRegCode(mc.Count) As String

For i As Integer = 0 To mc.Count - 1

strRegCode(i) = mc(i).Groups(Groups).Value

Next i

Return strRegCode

End Function

Public Function MadeRegexMatch(ByVal strText As String, ByVal strRegex As String, ByVal rexOpt As RegexOptions) As MatchCollection

REM 获取正则表达式匹配的集合

REM strHtml待正则的字符串

REM strRegex正则表达式

REM rexOpt正则选项

REM 返回 MatchCollection 类型集合

On Error Resume Next

Dim rex As Regex = New Regex(strRegex, rexOpt)

Return rex.Matches(strText)

End Function

Public Function MadeRegexReplace(ByVal sText As String, ByVal sRegex As String, ByVal sReplace As String) As String

REM 正则表达式文本替换

REM sText原文本

REM sRegex表达式

REM sReplace替换文本

On Error Resume Next

Dim rex As Regex = New Regex(sRegex, RegexOptions.IgnoreCase)

Return rex.Replace(sText, sReplace)

End Function

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

On Error Resume Next

Dim sRegex As String = "([\s\S]*?)"

Dim aTable() As String = MadeRegexArray(TextBox1.Text, sRegex, RegexOptions.IgnoreCase, 1)

For i As Integer = 0 To aTable.Length - 1

TextBox2.Text = TextBox2.Text  aTable(i)

Next i

End Sub

End Class

如图:

vb.net 正则表达式

正则表达式是:

/[a-zA-Z/]+$

如果要把第一个斜杠去掉,就是匹配index/index/index,用后向匹配,正则是:

(?=/)[a-zA-Z/]+$


分享标题:vb.net正则匹配 vba正则表达式匹配数字
链接URL:http://ybzwz.com/article/ddcsegd.html