regex - 正则表达式结果为多个匹配输出单个匹配
问题描述
我在“错误消息”字段中有一个包含多个换行符的文件。我需要将换行符替换为空格,因此可以将其加载为单行。
但我无法捕获多个匹配项。我的正则表达式为整个文件输出单个匹配项。我需要帮助来创建正则表达式,这将为我提供的示例提供 3 个匹配项。
https://regex101.com/r/DoED69/1
使用正则表达式
^breakmantis.*;(Error;[\s\S]*;Regular;)[\s\S]*breakmantis
**带有换行符的当前文件:**
name;brand;environment;center;Error
breakmantis;Kordel;Production;Bleep Eyeglow;Error;"The message did not pass the validation:
Error Message='PriceTag' is mandatory, under field Price.
Error Message='PriceAmount' is mandatory, under field Price.
Error Message='BaseQuantity' is mandatory, under field Price.";Regular;;;;24 Apr 2019 14:34 CEST
breakmantis;Kordel;Production;Bleep Eyeglow;Error;"The message did not pass the validation:
Error Message='PriceTag' is mandatory, under field Price.
Error Message='PriceAmount' is mandatory, under field Price.
Error Message='BaseQuantity' is mandatory, under field Price.";Regular;;;;24 Apr 2019 14:35 CEST
breakmantis;Kordel;Production;Bleep Eyeglow;Error;"The message did not pass the validation:
Error Message='PriceTag' is mandatory, under field Price.
Error Message='PriceAmount' is mandatory, under field Price.
Error Message='BaseQuantity' is mandatory, under field Price.";Regular;;;;24 Apr 2019 14:36 CEST
预期结果 :
breakmantis;Kordel;Production;Bleep Eyeglow;Error;"The message did not pass the validation: Error Message='PriceTag' is mandatory, under field Price.Error Message='PriceAmount' is mandatory, under field Price.Error Message='BaseQuantity' is mandatory, under field Price.";Regular;;;;24 Apr 2019 14:34 CEST
breakmantis;Kordel;Production;Bleep Eyeglow;Error;"The message did not pass the validation: Error Message='PriceTag' is mandatory, under field Price.Error Message='PriceAmount' is mandatory, under field Price.Error Message='BaseQuantity' is mandatory, under field Price.";Regular;;;;24 Apr 2019 14:35 CEST
breakmantis;Kordel;Production;Bleep Eyeglow;Error;"The message did not pass the validation: Error Message='PriceTag' is mandatory, under field Price.Error Message='PriceAmount' is mandatory, under field Price.Error Message='BaseQuantity' is mandatory, under field Price.";Regular;;;;24 Apr 2019 14:36 CEST
解决方案
尝试匹配:
\n(错误信息=)
并替换为
\1
在替换中添加前导空格以满足您的需要。
推荐阅读
- java - 如何将 json 转换为具有特定字段的 pojo
- javascript - 不和谐.js | 无法读取未定义的属性“集”
- javascript - 获取不带 HTML 标签的文本
- keycloak - Keycloak 令牌生成不起作用 - 未经授权的凭据
- spring - Spring 的 ApplicationListener
打破@CrossOrigin - c# - 在 razor-pages ASP.NET Core MVC 中与 asp-for 一起使用时,Textarea 不会在其中显示任何内容
- sql - 如何删除子查询
- jquery - 每个 ajax 成功调用的增量计数器
- android - 断开其他应用在 Android 中启用的 VPN
- c++ - 如果 QProcess 正在等待输入,是否可以发出信号?