Если sed
не является строгим требованием, существуют более удобочитаемые параметры, такие как grep
:
$ echo "<title>This is some text</title>" | grep -oP '(?<=<title>).*(?=</title>)'
This is some text
. Используется lookbehind
Если по какой-то причине опция -P
не работает, вы можете использовать perl
для использования аналогичного синтаксиса:
$ echo "<title>This is some text</title>" \
| perl -nle 'print $& if m{(?<=<title>).*(?=</title>)}'
This is some text