如何在VBScript中按筛选器查找字符串?

如何在VBScript中按筛选器查找字符串?,vbscript,Vbscript,我这里有个问题: 我有一篇这样的文章 a lot of html tags MPI-START Hello world! Hello world 2! MPI-END a lot of html tags again 不知何故,我需要在MPI-START和MPI-END之间获取文本 它可以包含许多行和文本,因此我需要将它们全部获取 我试图搜索,但什么都没有 有什么想法吗? 也为我的英语感到抱歉,我来自俄罗斯 UPD:我需要的文本包含在文本中,好的,我找到了答案 不完美但有效 Dim stri

我这里有个问题: 我有一篇这样的文章

a lot of html tags 
MPI-START
Hello world!
Hello world 2!
MPI-END
a lot of html tags again
不知何故,我需要在MPI-START和MPI-END之间获取文本
它可以包含许多行和文本,因此我需要将它们全部获取
我试图搜索,但什么都没有
有什么想法吗?
也为我的英语感到抱歉,我来自俄罗斯
UPD:我需要的文本包含在

文本中,好的,我找到了答案
不完美但有效

Dim strid,outtr
strid=“许多地狱标记MPI-START”&vbNewLine&“Hello World!”&vbNewLine&“Hello World 2!”&vbNewLine&“MPI-END there”
超出=拆分(strid,“MPI-START”)(1)
outstr=拆分(outstr,“MPI-END”)(0)
MsgBox outstr

下面是另一种在vbscript中使用
RegEx
提取两个分隔符之间数据的方法:

Option Explicit
Dim Full_String,First_Delimiter,Second_Delimiter,Extracted_Data

Full_String = "a lot of html tags" & vbNewLine &_
"< p data-placeholder=""Your story..."">" & vbNewLine &_
"Hello world!" & vbNewLine &_
"Hello world 2!" & vbNewLine &_
"</ p>" & vbNewLine &_
"a lot of html tags again"

wscript.echo Full_String

First_Delimiter = "< p data-placeholder=""Your story..."">"
Second_Delimiter = "</ p>"
Extracted_Data = ExtractData(Full_String,First_Delimiter,Second_Delimiter)

wscript.echo Extracted_Data

'------------------------------------------------------------------------------------------------
Function ExtractData(Full_String,Start_Delim,End_Delim)
Dim r,Matches,Data
    Set r=new regexp
    r.pattern = "(?:^|(?:\r\n))(:?"& Start_Delim &"\r\n)([\s\S]*?)(?:\r\n)(?:"& End_Delim &")"
    Set Matches = r.Execute(Full_String)
    If Matches.Count > 0 Then Data = Matches(0).SubMatches(1)
    ExtractData = Data
End Function
'------------------------------------------------------------------------------------------------
选项显式
Dim Full_字符串、第一个_分隔符、第二个_分隔符、提取的_数据
Full_String=“许多html标记”&vbNewLine&_
“

”&vbNewLine&_ “你好,世界!”&vbNewLine&_ “你好,世界2!”&vbNewLine&_ “”&vbNewLine&_ “又有很多html标记” wscript.echo完整\u字符串 第一个分隔符=“

” 第二个分隔符=“” 提取数据=提取数据(完整字符串、第一个分隔符、第二个分隔符) wscript.echo提取的\u数据 '------------------------------------------------------------------------------------------------ 函数ExtractData(完整字符串、开始行、结束行) 尺寸r、匹配、数据 Set r=newregexp r、 pattern=“(?:^ |)(?:\r\n))(:?“&Start\u Delim&”\r\n)([\s\s]*?)(?:\r\n)(?:“&End\u Delim&”) Set Matches=r.Execute(完整字符串) 如果Matches.Count>0,则数据=匹配项(0)。子匹配项(1) 提取数据=数据 端函数 '------------------------------------------------------------------------------------------------