Выберите только первый результат /.*(?!.*==>.*).*(\n) / gm - PullRequest
0 голосов
/ 07 ноября 2018

Я пытаюсь извлечь синтаксис из текста с /.*(?!.*==>.*).*(\n)/gm но меня интересует только первая строка.

Результат, который я получаю, - это все совпадения поиска в документе, но меня интересует только первая строка.

У тебя есть идея? Вот моя текущая демонстрация регулярных выражений .

В этом случае я хочу получить только P 74 T 164 IMC 27.27.

1 Ответ

0 голосов
/ 07 ноября 2018

Вы можете использовать

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

См. regex demo . Смысл в том, чтобы сопоставить и использовать ==> и любое количество горизонтальных пробелов после него, а затем перехватить оставшуюся часть строки, используя (.*) группу захвата.

Детали шаблона

  • ==> - буквенная строка
  • [ \t]* - (или [^\S\r\n]*) - любые 0+ горизонтальных пробельных символов
  • (.*) - Группа захвата 1: остаток строки.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...