Получите все соответствия regex между двумя шаблонами и распечатайте их в файл

Не знайте, как зафиксировать его, но....

При установке Автоключа-gtk, макропроцессор клавиатуры (и если Вы знаете просто немного Python), должно быть относительно легко записать макрос, который позволяет Вам ввести в мм и иметь его, преобразовывают его в дюймы на форме/диалоговом окне. Это могло быть инициировано пользовательской горячей клавишей, которая будет работать почти в любом приложении или могла быть ограничена, чтобы только работать в определенных окнах. Вы, вероятно, хотели бы сделать, вход в макросе (сценарий Python) и иметь макрос отправляет преобразованный результат, как будто он прибыл из клавиатуры.

Хотя это - ясно не фиксация, она действительно показывает способ изменить много программ, чтобы сделать, вещи "Ваш путь" без наличия изменяют сами программы, который часто требует большого количества времени и знания (и восстановление его каждый раз, когда программы обновляются).

4
26.09.2013, 22:25
1 ответ

ЕСЛИ GNU grep является опцией, Вы могли бы передать -P (perl-совместимый regex) флаг и утверждения предвидения использования, lookbehind утверждения и нежадные соответствия для вытаскивания то, в чем Вы нуждаетесь

echo 'xxSTART relevanttext xxEND something else xxSTART even more relevant'  |\
grep -oP '(?<=START).*?(?=xxEND|$)'
relevanttext
even more relevant

Или поскольку Stephane Chazelas предлагает, используйте остроту \K вместо оглянуться утверждения

echo 'xxSTART relevanttext xxEND something else xxSTART even more relevant'  |\
grep -oP 'START\K.*?(?=xxEND|$)' 
6
27.01.2020, 20:52
  • 1
    Или: grep -oP 'START\K.*?(?=xxEND|$)' –  Stéphane Chazelas 26.09.2013, 23:27
  • 2
    @StephaneChazelas, это - положительная сторона, включенная. Моя версия GNU grep (2.5.1) не поддерживает \K хотя –  iruvar 26.09.2013, 23:35
  • 3
    Это больше до версии libpcre grep был связан против, чем версия grep самостоятельно. \K был добавлен в pcre 7.2 (2007) (функция от жемчуга 5.10) –  Stéphane Chazelas 26.09.2013, 23:47

Теги

Похожие вопросы