Por padrão, sed
usa Expressão Regular Básica (BRE) . Em BRE, \(
e \)
são usados para definir a subexpressão :
A subexpression can be defined within a BRE by enclosing it between
the character pairs "(" and ")". Such a subexpression shall match
whatever it would have matched without the "(" and ")", except that
anchoring within subexpressions is optional behavior; see BRE
Expression Anchoring. Subexpressions can be arbitrarily nested.
Em seguida, você pode usar a expressão de referência anterior '\n'
para corresponder à mesma cadeia de caracteres (possivelmente vazia) de caracteres que foi correspondida por uma subexpressão entre \(
e \)
, onde n
de 1
até %código%. Aqui, você usa apenas parênteses esquerdos 9
, \(
não pode encontrar parênteses à direita e gerar um erro.
No BRE, você usa apenas sed
para corresponder aos parênteses esquerdos literais.
Em algumas implementações de (
, você pode alternar para Expressões regulares estendidas (ERE) (exemplo GNU sed com sed
opstion), então você deve use -r
para corresponder aos parênteses esquerdos literais.