我已经搜索了整个搜索,根本无法弄清楚这个。我一直在尝试在多行字符串中找到所有匹配项,例如:
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或我需要在循环中解析字符串?
请尝试以下内容。*
是贪婪的,它将尝试匹配最长的字符串,通过使用*?
,它将尝试匹配最短的字符串。
(?<=<*).*?(?=*>)