首页 > 解决方案 > 如何将 GMAIL 正文中的特定字段解析为 google SHEETS

问题描述

我有一个以此开头的 gmail 正文:

Name: Full Report
Store: River North (Wells St)
Date Tripped: 18 Feb 2020 8:40 PM
Business Date: 18 Feb 2020 (Closed)
Message:
Information:
This alert was tripped based on a user defined trigger: Every 5 minutes.

我正在尝试解析 Date Tripped: 字段和 Business Date: 字段,但不相信我得到了正确的正则表达式。

    // Implement Parsing rules using regular expressions
    if (content) {

      tmp = content.match(/Date Tripped: \s*([A-Za-z0-9.\s ]+)(\r?\n)/);
      var tripped = (tmp && tmp[1]) ? tmp[1].trim() : 'N/A';

      tmp = content.match(/Business Date: \[0-9][()]/);
      var businessdate = (tmp && tmp[1]) ? tmp[1].trim() : 'N/A';

标签: regexgmailgmail-api

解决方案


对于“跳闸日期”,需要进行细微更改:

Date Tripped:\s*([:A-Za-z0-9\s]+)\r?\n

你的主要错误:你忘了把:类括号放在里面。提示:摆脱(and )around \r?\n。你不想抓住那些。

你可以让它更短一点:

Date Tripped:\s*([:\w\s]+)\r?\n

正则表达式101

对于营业日期,此人将执行以下操作:

Business Date:\s([\w\s]+\([a-zA-Z]+\))

甚至更短:

Business Date:\s([\w\s]+\(\w+\))

您的(主要)错误:您逃脱\[,这在这里不正确。下一个:[()]匹配(and ),但不匹配(Closed)。见正则表达式101


推荐阅读