具体的正则表达式查询

时间:2017-07-26 09:49:39

标签: regex

我搜索了正则表达式的答案,似乎没有人解决我的这个问题。我正在使用一种特定的正则表达式产品,可以搜索文本并丢弃电子邮件中某一行的特定部分。

在这种情况下,我有一行我可以使用正则表达式进行搜索并丢弃'主题:'

我需要;

  1. 弃掉该字段的第二部分
  2. 然后选择实际文本(然后将其传递给单独的进程)
  3. 例如,这个检查(我写的另一个测试)得到'ThisServer Blah blah'文本 - 传递给进程的下一部分,丢弃'Subject:'(这是自动的)并丢弃'警报开放';

    (?:Alert open: ([^\n\r]*))
    

    主题:警报打开: ThisServer Blah blah

    所以,所有的工作和ThisServer Blah等等都传递给下一部分..

    我有一个我想写的新案例;

    主题:这件事有问题

    1. '主题:'会被自动丢弃,因此无需担心
    2. 我想特意丢弃'有问题'
    3. 离开..

      1. '这件事'会传递到下一个阶段。
      2. ((?: is having problems)) - 丢弃'有问题'。主题:已经处理好了,但是我需要选择' This Thing '以便它可以传递给下一部分,但是无法解决如何做到这一点..

2 个答案:

答案 0 :(得分:0)

在字段映射中,添加一个映射,查看主题(或相关的正文),查找Subject: (.*?) is having Problems并将其放入要分配的字段中。请参阅可能有帮助的this image

答案 1 :(得分:0)

好的我已经设法自己解决了 - 就像所有这些事情一样,它比我想象的容易得多......

首先,我没有检查主题:行(我检查了整个电子邮件)

然后换行;

主题:此服务器出现问题

主题:现在给我一个开始的地方,以下工作;

(?:Subject: )([^\n\r]*)(?: is having problems)

关键是要有一个起点。这排除了第一位(Subject :)然后排除了第二位(有问题),然后将结果放入第1组(我删除了额外的括号以强制使用正确的组)