VB正则表达式首尾匹配

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VB正则表达式首尾匹配相关的知识,希望对你有一定的参考价值。

re.Pattern = "<li>.*?([^""]*)<\/li>"
ReDim Preserve MD(re.Execute(TEXT1).Count - 1) As String
For I = 0 To UBound(MD)
MD(I) = re.Execute(TEXT1)(I).SubMatches(0)
List1.AddItem MD(I)
Next

TEXT1里面为
<li>abcdefg</li>
<li>abs</li>
<li>absscdefg</li>
<li>abcsdefg</li>
<li>abcdeddfg</li>
<li>abcsddefg</li>
<li>abcsdefg</li>
内容数量都不定,要怎么样才能用正则匹配将里面的内容收集到数组里面去?
上面我写的代码是错误的.......

<li>(.*)</li>

参考技术A Dim MD() As String
Private Sub Command1_Click()
Set regEx = New RegExp
  regEx.Global = True '设置全局搜索所有匹配项
  regEx.IgnoreCase = True '忽略大小写
  regEx.Pattern = "<li>(.+)</li>" 
  Set matches = regEx.Execute(Text1)   ' 执行搜索,返回的集合中已包含全部项目
  ReDim Preserve MD(matches.Count - 1)
  For i = 0 To matches.Count - 1  
    Set Match = matches.Item(i)
   MD(i) = Match.SubMatches.Item(0)
    List1.AddItem MD(i)
  Next
End Sub

参考技术B 不是<li>(.+)</li>
应该是<li>(.+?)</li>

动态网页制作PHP常用的正则表达式

匹配中文字符的正则表达式: [u4e00-u9fa5]

  匹配双字节字符(包括汉字在内): [^x00-xff]

  应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)

技术分享

  匹配空行的正则表达式: [s| ]*

  匹配HTML标记的正则表达式: /<(.*)>.*</>|<(.*) />/

  匹配首尾空格的正则表达式: (^s*)|(s*$)

  应用:javascript中没有像vbscript那样的trim函数,我们就可以利用这个表达式来实现,如下:

技术分享

  利用正则表达式分解和转换IP地址:

  下面是利用正则表达式匹配IP地址,并将IP地址转换成对应数值的javascript程序:

技术分享

  不过上面的程序如果不用正则表达式,而直接用split函数来分解可能更简单,程序如下:

技术分享

  匹配Email地址的正则表达式: w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*

  匹配网址URL的正则表达式: http://([w-]+.)+[w-]+(/[w- ./?%&=]*)?

  利用正则表达式去除字串中重复的字符的算法程序:

技术分享

  用正则表达式从URL地址中提取文件名的javascript程序,如下结果为page1

技术分享

  利用正则表达式限制网页表单里的文本框输入内容:

  用正则表达式限制只能输入中文:

技术分享

  用正则表达式限制只能输入全角字符:

技术分享

  用正则表达式限制只能输入数字:

技术分享

  用正则表达式限制只能输入数字和英文:

技术分享

以上是关于VB正则表达式首尾匹配的主要内容,如果未能解决你的问题,请参考以下文章

java 正则匹配 ,某 首尾中间 多个内容

常用的正则整理

如何使用正则表达式匹配从 xml 文件中搜索和替换包含占位符标记的文本。 VB.net 或 C#

用JAVA语言编写正则表达式匹配指定的汉字的方法

VB.NET的正则表达式

动态网页制作PHP常用的正则表达式