You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用正则表达式匹配CSV文件中最后字段不重复的行

匹配最后字段与上一行不同的CSV行

修改后的正则表达式

要实现匹配连续两行中最后字段(分号后的数字)不同的情况,可在原正则基础上通过负向预查排除与上一行最后字段相同的场景,修改后的正则如下:

^(([^;]+;){6})(\d+)\n(([^;]+;){6})(?!\3)\d+

正则逻辑说明

  • ^(([^;]+;){6})(\d+):匹配第一行完整内容,捕获组\3对应第一行的最后数字字段
  • \n:匹配换行符,关联前后两行
  • (([^;]+;){6}):匹配第二行的前6个字段内容
  • (?!\3)\d+:负向预查,确保第二行的最后数字字段不等于第一行捕获的\3值

匹配结果示例

针对你提供的CSV内容,该正则会匹配以下连续行对:

  • 第1行与第2行(最后字段1027144 vs 1027145)
  • 第3行与第4行(最后字段1027145 vs 1027146)
  • 第4行与第5行(最后字段1027146 vs 1027147)
  • 第5行与第6行(最后字段1027147 vs 1027148)

若需单独提取这些行,可根据使用的工具(如grep、sed、VS Code等)调整捕获或输出逻辑。

内容的提问来源于stack exchange,提问作者avb

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 02:22:32