正则表达式 - 返回引号之间的所有字符,每行多次

标签 regex vb.net ssis

我在使用正则表达式方面还是个新手,并且仍在尝试弄清楚它,所以请原谅我下面的问题中的任何不一致之处。

下面的所有内容我都想在 VB.NET 中使用正则表达式来完成。

VB.NET 中使用 RegEx,我尝试从与 CSV 格式文件相似的平面文件中提取分隔数据,但仅保留数据双引号之间,以逗号分隔。

以下是典型线路的示例:

[java] Customer [customerId="1000", customerName="Acme Service, Inc"]
[java] Customer [customerId="2000", customerName="Widget Factory, LLC"]

我正在寻找的输出是:

"1000","Acme Service, Inc"
"2000","Widget Factory, LLC"

编辑

使用这个表达式,"([""'])(?:(?=(\\?))\2.)*?\1",我能够仅提取 "1000",但无法在同一行获取第一个和任何后续双引号 "" 值。

此外,这不仅限于 2 个值,还可以是同一行上一组不确定的双引号值。

非常感谢任何帮助。

最佳答案

问题是,当您有重复捕获组时,只会捕获最后一个实例。从正则表达式中获取无限数量的匹配的唯一方法是全局应用正则表达式。在整个文件中执行此操作的最简单方法是使用 (".*?") ,如 fiddle 所示。

关于正则表达式 - 返回引号之间的所有字符,每行多次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18154881/

相关文章:

JavaScript 字符串替换为来自以 param 作为正则表达式捕获组的 lodash 函数返回的替换

regex - 应该使用什么模式来验证 2 BIN 万事达卡号码

php - 将字符串转换为数组的最佳方法

vb.net - 大量文件的 Visual Studio 和编译性能问题

xml - 在 Visual Basic 中将数据添加到 XML 文件的节点

.net - 为什么 HttpWebRequest 和 WebBrowser 获得不同的 HTML 源代码?

sql-server - 无法将 SSIS 包部署到 Windows 10 Pro 上的 SQL Server 2016 Express

c# - 需要创建一个在目标列中插入数据的 SSIS 包

SSIS 传输 SQL Server 对象任务在传输的数据中丢失重音

regex - 匹配开头和结尾的单词