grep -ioP '(? <= Arguments = \ ") (. *) (? =": Language =)' в скриптах Bash - PullRequest
0 голосов
/ 04 мая 2018

Я просматривал bash-скрипт и читал строку, которая говорит:

echo "Some line..." | grep -ioP '(?<=Arguments=\")(.*)(?=":Language=)'

Я понял часть grep, т.е. grep -ioP, но вход для grep, т.е.

'(?<=Arguments=\")(.*)(?=":Language=)' тип выражения встречается впервые.

Что это значит? Это означает что-то особенное для grep или это просто извлечение аналогичной строки из части строки эха?

Спасибо!

1 Ответ

0 голосов
/ 04 мая 2018

Это проверочные утверждения . (?<...) является прогнозом (что предшествует), а (?=...) является прогнозом (что следует). Причина в том, что они не являются частью матча, поэтому -o не выведет их.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...