asp正则表达式使用过程中踩的坑

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lyb8010/article/details/83990271

以下代码是我调试过程中的代码,有以下问题:

1、matches(0).SubMatches(0)是匹配模式中有()的时候来获取结果。

2、如果匹配模式中无()则直接用Match.value获取匹配结果

3、将以下代码copy到test.asp的文件中时,在调试的时候浏览器有些时候看不到结果,是因为输出的结果中包涵了代码。采用源代码的模式是可以看到匹配的代码及文字。Match.value输出的结果是包涵了代码的。matches(0).SubMatches(0)输出的结果是可能剔除了代码的结果。

4、未解决的问题:html中的空格及换行,如stingtxt2的样式,没有找到剔除空格或换行的解决办法。欢迎交流:QQ:309800818

<%
Function RegExpTest(patrn, strng) 
    Dim regEx, Match, Matches ' 建立变量。 
    Set regEx = New RegExp ' 建立正则表达式。 
    regEx.Pattern = patrn ' 设置模式。 
    regEx.IgnoreCase = True ' 设置是否区分大小写。 
    regEx.Global = True ' 设置全程可用性。 
    Set Matches = regEx.Execute(strng) ' 执行搜索。 
    For Each Match in Matches ' 遍历 Matches 集合。 
    RetStr = matches(0).SubMatches(0)
    'RetStr = RetStr & Match.value &"<br/>" 
    'RetStr = RetStr & Matches(1) &"<br/>" 
    
    Next 
    RegExpTest = RetStr 
End Function

stingtxt = "<title>fasfasdfasdfadsfasdfdfasd</title>"
stingtxt2 = "<title>
 惜命最好的方式,竟不是养生,而是…惊醒无数人!
</title>"
'response.Write RegExpTest("<img.*?>","asdfasdfadsf<img src='ad.jpg'>asdfasdfasdfsdf<img src='bbbd.jpg'>")
response.Write(RegExpTest("<title>(.*?)<\/title>", stingtxt2)) 
'response.Write(RegExpTest("(<title>)", "<title>fasdfasd</title>")) 
'response.write RegExpTest("[ij]s.", "IS1 Js2 IS3 is4")
%>

猜你喜欢

转载自blog.csdn.net/lyb8010/article/details/83990271