标记参数列表的正则表达式(VBScript)

时间:2010-11-14 17:24:02

标签: regex vbscript

我正在尝试创建一个正则表达式,用于标记以下格式的字符串: Program.EXE someparam:[[REG | HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows]] someotherparam [[DATA | User]] canbeanotherparam

我正在寻找的正则表达式是在我的字符串中获取所有[[REG | any text]] OR [[DATA | any text]]次出现。

我的主要问题是将每个实例视为单独的标记。 当尝试类似[[REG \ |。+]]之类的东西时,第一次出现[[和最后一次出现]]作为表达式边界。我想它与。+。

有关

我在上面的例子中寻找的结果是: [REG | HKEY_LOCAL_MACHINE \ SOFTWARE \微软\窗户] [[DATA |用户]]

1 个答案:

答案 0 :(得分:0)

默认情况下,中继器是贪婪的:

[[(REG|DATA)\|.+?]]

添加问号使其尽可能不合适,因此它会在“它可以找到”的第一个实例处停止。