在定义的字符串之间或使用Vbscript兼容的正则表达式定义的字符串的末尾搜索SubStrings

时间:2014-08-18 13:41:03

标签: regex vbscript delimiter

我必须以文本格式解析报告标题中的特定信息 由于我必须通过VB脚本中的正则表达式执行此操作,因此我无法使用正则表达式的前瞻功能。

覆盖正则表达式的典型用例是

1)User Name : Clark Kent
由正则表达式提取:任何行的“Clark Kent”以“User Name :”开头 2)User Name Clark Kent
由正则表达式提取:“Clark Kent”表示任何行以“User Name”开头并删除“Clark Kent”中的所有前导和尾随空白 3)User Name: Clark Kent Sample ID : 1234
由正则表达式提取:“Clark Kent”从任何以“Clark Kent”开头并以“SampleID :”结尾的行

非常感谢此示例的任何帮助

1 个答案:

答案 0 :(得分:1)

我的正则表达式技能并不是最好的,但这种模式适用于你的三个例子。它目前只查找并返回<first name><space><last name>,但它可以适用于处理更复杂的场景。

With New RegExp
    .Pattern = "^User Name\s*:?\s*(\w+\s\w+)\s*(?:Sample ID)?"
    Set Matches = .Execute(strLine)
End With

If Matches.Count > 0 Then strName = Matches(0).SubMatches(0)