51Testing软件测试论坛

标题: 一个正则表达式的问题 [打印本页]

作者: wshyzhywx    时间: 2010-4-12 10:40
标题: 一个正则表达式的问题

如何将一个文件中 以abc开头的行的行尾后加上! 这个符号
作者: TIB    时间: 2010-4-12 12:00
试试这个吧:

Function RegExpTest(patrn, strng)
   Dim regEx, Match, Matches
   Set regEx = New RegExp   '  创建一个正则表达式
   regEx.Pattern = patrn   ' 设置正则表达式的匹配模式
   regEx.IgnoreCase = True   ' 设置为不区分大小写
   regEx.Global = True   ' 设置为全局可用

   ' 如果正则表达式匹配成功,则替换匹配项的字符串
   If  regEx.Test(strng) = True then
           repalceStr =  regEx.Replace(strng,strng&"!")
   End If
  RegExpTest = repalceStr
End Function


' 调用RegExpTest
MsgBox(RegExpTest("^abc.*", "abc123"))

[ 本帖最后由 TIB 于 2010-4-12 12:04 编辑 ]
作者: 17800455    时间: 2010-4-20 11:33
标题: 回复 2# 的帖子
支持一下。
作者: hsjzfling    时间: 2010-4-21 16:05
标题: 回复 1# 的帖子
大致思路如下
1. 由于是要判断每行,所以需要先用遍历每一行然后用readline读取一行的文本strLine,
2. Left(strLine) = "abc"来判断是不是abc开头然后在本字符串末加个!,将行字符串保存在一个数组中,可以根据需要是否用trim
3. 循环将数组中的文本writeline到新文本中,至于是否替换原文本就根据自己需要了




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2