Допустим, у меня есть следующая строка:
"собака-кошка привет кот" собака собака-привет мир кошки "
и два слова" привет "и" мир ".
Я хочу получить строку, которая между этими словами и где два слова находятся ближе всего (с точки зрения количества слов между ними) друг к другу .В этом примере между этими двумя словами будут находиться следующие строки:
- "кошка-собака, привет, кошка"
- "кошка"
, так как "привет""и" мир "являются ближайшими во втором варианте, желаемый результат будет" кошка " в этом примере.
Как мне сделать это в regEx (во вкусе JS)?
Лучшее, что я мог придумать, это
(?<=hello\s+).*?(?=\s+world)
, но это дает мне только 1-й вариант, то есть "кошка собака собака привет кошка"