当前位置:中国站长下载文章中心网页编程.NET编程 → 正则表达式在网页处理中的应用四则(2)

正则表达式在网页处理中的应用四则(2)

减小字体 增大字体 作者:不详  来源:不详  发布时间:2006-8-14 8:50:26
我们根据\b把字符串分割保存到数组
  SplitAdv = Split(objRE.Replace(strInput, "\b"), "\b")
  End Function
  
    总而言之,用正则表达式解析文本数据文件具有高效、缩短开发时间的优点,能够节省大量分析文件、根据复杂的条件提取有用数据的时间。在一个迅速发展的环境中仍会有许多传统的数据可资利用,掌握如何构造高效的数据分析例程将是一种宝贵的技能。
  
    四、字符串替换
  
    在最后一个例子中我们要看看VBScript正则表达式的替换功能。ASP经常用于动态地格式化从各种数据源获得的文本。利用VBScript正则表达式的强大功能,ASP能够动态地改变匹配的复杂文本。通过加入HTML标记突出显示部分单词就是一种常见的应用,比如突出显示搜索结果中的搜索关键词。
  
    为说明实现方法,下面我们来看一个突出显示字符串中所有“.NET”的例子。这个字符串可以从任何地方获得,比如数据库或者其他Web网站。
  
  <%
  Set regEx = New RegExp
  regEx.Global = true
  regEx.IgnoreCase = True
  
  ' 正则表达式模式,
  ' 寻找任何结尾为“.NET”的单词或者URL。
  regEx.Pattern = "(\b[a-zA-Z\._]+?\.NET\b)"
  
  ' 用于测试替换功能的字符串
  strText = "微软建立了一个新网站www.ASP.NET。"
  
  ' 调用正则表达式的Replace方法
  ' $1表示把匹配的文本插入当前位置
  Response.Write regEx.Replace(strText, _
  "<b style='color: #000099; font-size: 18pt'>$1</b>")
  %>
  
    这个例子中有几个重要的地方必须注意。整个正则表达式被放入了一对圆括号中,它的作用是截取所有匹配的内容供以后使用,这些内容在替换文本中通过$1引用。类似的截取每次替换可以使用多达9个,分别通过$1到$9引用。正则表达式的Replace方法和VBScript本身的Replace函数不同,它只需要两个参数:被搜索的文本,替换用的文本。
  
    在这个例子中,为了突出显示搜索到的“.NET”字符串,我们用粗体标记以及其他样式属性来包围这些字符串。使用这种搜索和替换技术,我们能够方便地为网站搜索程序加上突出显示搜索关键词的功能,或者自动为页面中出现的关键词加上指向其他页面的链接。
  
    结束语
  
    希望本文介绍的几种正则表达式技巧对你在何时、如何应用正则表达式有所启发。虽然本文的例子用VBScript编写,但在ASP.NET中正则表达式同样也大有用武之地,它是服务器端控件表单检验的主要机制之一,而且通过System.Text.RegularExpressions命名空间导出到了整个.NET框架之中。
    做人要厚道,请注明转自chinazhan中国站长(www.ChinaZhan.com)。

上一页  [1] [2]