在开始和结束时查找由2个特定字符包含的字符串的所有实例



我已经搜索了整个搜索,根本无法弄清楚这个。我一直在尝试在多行字符串中找到所有匹配项,例如:

Dim VariableText As String = "Some text <* 
Dim Var1 as Integer = 5
ResponseText = IIf(Var1 <= 2,Var1 * 5, iif(Var1 > 2, Var1 * 2, 0)).ToString(""0"")
*> Some more text <* ResponseText = MsgBox(""TEST!"") *>"

请注意,外地者也可能有比更大的,大的星号和星号,因此不包括这些字符的列表不起作用。

我尝试了许多不同的正则配合组合,但是我似乎只能捕获第一个"&lt;*"和最后一个"*>"

之间的一切

我想要的是捕获"&lt; **>"所包含的每个部分,以便我只能与外壳内的文本一起工作。例如(这是我能找到的最近的正则表达式):

Dim R as New Regex("(?<=<*).*(?=*>)", RegexOptions.SingleLine)
Dim Coll as MatchCollection = R.Matches(VariableText)
For Each M as Match in Coll
    'Do something with each section
Next

我还尝试了一个排除块:"(?&lt; =&lt; *)?。但这也不起作用

有人知道是否可以使用Regex或我需要在循环中解析字符串?

请尝试以下内容。*是贪婪的,它将尝试匹配最长的字符串,通过使用*?,它将尝试匹配最短的字符串。

(?<=<*).*?(?=*>)

相关内容

  • 没有找到相关文章

最新更新