首页 > 解决方案 > 正则表达式捕获第三个括号中的字符串

问题描述

您好感谢所有帮助的人!

我有一个这样的声明:

SELECT DISTINCT [SAS_Tableau].[dbo].[XFRACAS_iMRO_ToBeImported].[EQUIP_EQUIPMENT_NUM], [SAS_Tableau].[dbo].[XFRACAS_iMRO_ToBeImported].[EQUIP_MATERIAL_NUM], [SAS_Tableau].[dbo].[XFRACAS_iMRO_ToBeImported].[EQUIP_MATER_EXT]

依此类推...每次仅在这些括号中[String]

我只想抓住EQUIP_EQUIPMENT_NUMEQUIP_MATERIAL_NUMEQUIP_MATERIAL_TEXT

这是我尝试过但不起作用的正则表达式(?<=]\.\[).*?(?=].)(?=],)

请帮忙!!!

标签: regexvb.net

解决方案


(?=].)您可以在它已经断言一个逗号之后省略这个积极的前瞻。逗号比点更具体,点将匹配除换行符以外的任何字符。

然后使用否定字符类[^不越界[]

(?<=\.\[)[^][]*(?=],)

查看.NET 正则表达式演示


推荐阅读