这个
$echo '| foo | bar | baz |' | sed 's@^|[^|]*|\([^|]*\)|.*@\1@'
根据需要返回bar
。我如何对 opt 做同样的事情-E
?
https://www.gnu.org/software/sed/manual/html_node/Extended-regexps.html
这个
$echo '| foo | bar | baz |' | sed 's@^|[^|]*|\([^|]*\)|.*@\1@'
根据需要返回bar
。我如何对 opt 做同样的事情-E
?
https://www.gnu.org/software/sed/manual/html_node/Extended-regexps.html
尝试:
笔记:
在扩展的正则表达式中,组是用
(...)
而不是\(...\)
.在扩展的正则表达式中,
|
通常意味着交替。要将其解释为字符,需要对其进行转义。(这个规则的例外是[...]
where|
只是一个普通字符。替代方案:使用 awk