我目前使用此正则表达式计算一行文本中的逗号数:
^([^,]*,){9}[^,]*$
以下是来自测试服务器的示例消息:
2018-06-25T19:44:31.187Z,MAIL\Outbound Proxy Frontend MAIL,08D5D14527D3D0F3,1,192.168.20.1:717,192.168.20.23:28050,>,"220 MAIL.potato.ca Microsoft ESMTP MAIL Service ready at Mon, 25 Jun 2018 15:44:30 -0400",
现在这有效,但它还会计算引号内的逗号(在结尾处)。 我需要使用它来检测8个逗号,从而忽略任何用引号引起来的“”文本。我无法解决这个问题,所以有什么想法可以做到这一点?
为了提供上下文,这是为了正确解析邮件服务器中的日志,并使用我当前的设置来解析电子邮件,如果该主题中包含一个或多个逗号,则会中断我的正则表达式检测...
NB。这不是语言,但是后面的正则表达式引擎基于Java。
不确定为什么将其标记为重复项。链接的问题是基于代码的提取而不是计数。