读书人

求两个正则表达式截取字符串的函数 VB

发布时间: 2012-03-28 15:40:03 作者: rapoo

求两个正则表达式截取字符串的函数 VB.NET的
函数一:
function(A,B,C,D)
ABC类型string,D为布朗值
函数返回从A中截取B和C之间的值,D决定返回值是否包含BC字符串。
函数二:
function(A,B,C)
函数将A中包含的B字符串替换成C,C为空时就是将A中的B字符串清除掉。

要VB.NET的代码,正则表达式,不要数组和替换那种,处理HTML那种没用



[解决办法]

VB.NET code
    Function First(ByVal A As String, ByVal B As String, ByVal C As String, ByVal D As Boolean) As String        Dim rgx As Regex = New Regex("(?is)(?<=" & B & ").*?(?=" & C & ")")        If D Then            Return B & rgx.Match(A).Value & C        Else            Return rgx.Match(A).Value        End If    End Function    Function Second(ByVal A As String, ByVal B As String, ByVal C As String) As String        If String.IsNullOrEmpty(C) Then            Return A.Replace(B, "")        Else            Return A.Replace(B, C)        End If    End Function
[解决办法]
VB.NET code
Function First(ByVal A As String, ByVal B As String, ByVal C As String, ByVal D As Boolean) As String       Dim rgx As Regex = New Regex("(?is)"+Regex.Escape(B & "(.*?)" & C))        If D Then            Return  rgx.Match(A).Value        Else            Return rgx.Match(A).Groups[1].Value        End If    End Function    Function Second(ByVal A As String, ByVal B As String, ByVal C As String) As String        Return A.Replace(B, C)    End Function 

读书人网 >VB Dotnet

热点推荐