gpt4 book ai didi

java - 一个正则表达式,用于捕获两个略有不同的模式

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:25:17 24 4
gpt4 key购买 nike

一个文件包含以下类型的记录,其中每个记录有四个条目。

abc, 12:30, love coding, re0*10

cde, informative, "love coding, abcd,ab/cd", 0

使用场景是这样的,给定一个1000条记录的文件。每条记录将被放入表中的一行中,每个条目将被放入相应的条目中。我想要一个正则表达式来帮助我捕获每条记录的四个条目。

对于第一种记录,我可以使用下面的模式来捕获四个条目

 ^([^,]*),([^,]*),([^,]*),([^,]*)$

对于第二种记录,我可以用

^([^,]*),([^,]*),"([.*])",([^,]*)$

但是如何用一个正则表达式来捕获这两个模式,它可以用来处理整个文件。

最佳答案

为了能够匹配两条线,您可以使用这样的交替:

^("[^"]*"|[^,]*), *("[^"]*"|[^,]*), *("[^"]*"|[^,]*), *("[^"]*"|[^,]*)$

("[^"]*"|[^,]*) 在每个单元格中匹配引号或任何不是逗号的值。请注意,它不会处理不平衡或转义的引用字符串。

RegEx Demo

关于java - 一个正则表达式,用于捕获两个略有不同的模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36204543/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com