无法使用Perl Regex从句子中解析不同的参数

  • 本文关键字:参数 句子 Perl Regex regex perl
  • 更新时间 :
  • 英文 :


我有以下两个字符串

02/22/2017 10:15:19.312 AM: Information : Response Code : 98
02/22/2017 10:15:19.312 AM: Information : Response Code : 99 : TransactionID : 132

我需要提取以下参数 -

  1. 时间戳
  2. 响应代码
  3. TransActionId(如果存在于字符串中)

我正在使用以下模式搜索

/^(d{2}/d{2}/d{4})(.*bResponse Codeb)(.*b : b)(d+)(.*bTransactionIDb)?(.*b : b)?(d+)?/

无法提取交易。您能否让我知道正则是什么错?

当您在正则态度中使用贪婪的.*时,它匹配到最后一个:

您需要将其做出非怪兽并删除不需要的群体:

/^(d{2}/d{2}/d{4}).*bResponse Codeb.*?b : bd+(?:.*bTransactionIDb.* : b)?(d+)?/

REGEX DEMO

相关内容

最新更新