\ 1 - o que significa esta ação sed?

0

Estou usando este comando sed para extrair um valor json para uma chave, digamos MyKey ..

sedPattern='s/^.*"myKey":"\([^"]*\)".*$//'

Para uma string json como

{"myKey" : 1, "yourKey": 2}

Ele retorna o que eu preciso,

1

Mas o que a ação no comando acima sed significa?

    
por Madhavan Kumar 18.10.2015 / 05:27

1 resposta

3

\([^"]*\) define um grupo de caracteres, o grupo é realmente o conteúdo encontrado entre as duas chaves (), as chaves precisam ser escapadas, portanto \( e \)

é o conteúdo do primeiro grupo

Pode haver vários grupos definidos usando vários conjuntos de pares de chaves, eles são numerados de forma incremental e cada um pode ser referenciado como \n (por exemplo, , , etc), portanto, o nome < em> backreference .

    
por 18.10.2015 / 06:57

Tags