仅选择第一个结果/.*(?!.*==>.*).*(\n)/ gm

时间:2018-11-07 10:58:13

标签: regex google-apps-script

我正在尝试使用/.*(?!.*==>.*).*(\n)/gm从文本中提取语法 但只有第一线让我感兴趣。

我得到的结果是文档中所有的搜索匹配项,但是我只对第一行感兴趣。

您有个主意吗?这是my current regex demo

在这种情况下,我只想获得P 74 T 164 IMC 27.27

1 个答案:

答案 0 :(得分:1)

您可以使用

var m;
var rx = /==>[ \t]*(.*)/;
if (m=rx.exec(s)) {
    Logger.log(m[1]);
}

请参见regex demo。关键是要匹配并消耗==>及其后的任意数量的水平空白,然后使用(.*)捕获组捕获其余的行。

模式详细信息

  • ==>-文字字符串
  • [ \t]*-(或[^\S\r\n]*)-任意0 +水平空格字符
  • (.*)-捕获第1组:该行的其余部分。