网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

vb点虐 正则分组 正则表达式 分组

VB.NET如何将正则表达式的分组(小括号)中的内容赋值给变量

Dim input = "123abc456def"

创新互联是一家集网站建设,凌海企业网站建设,凌海品牌网站建设,网站定制,凌海网站建设报价,网络营销,网络优化,凌海网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

Dim reg As New Regex("abc(\d*)")

Dim A As String = reg.Match(input).Groups(1).Value

Console.WriteLine(A) '456

Console.ReadLine()

vb点虐 正则表达式

(a|A)href=(.*?[\u4e00-\u9fa5]{8,19}.*?)(a|A)

在需要提取的部分加上正反括号进行匿名分组,

然后用$2获取该匿名分组就可以了

或者可以做命名分组,

vb点虐 正则表达式

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点虐 正则分组 正则表达式 分组
链接地址:http://bjjierui.cn/article/ddpoeoo.html

其他资讯