\1 - この sed 操作はどういう意味ですか?

\1 - この sed 操作はどういう意味ですか?

私はこのsedコマンドを使用して、MyKeyと同じキーのjson値を抽出します。

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

このようなjson文字列の場合

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

私が必要なものを返します。

1

しかし、\1上記のsedコマンドの操作はどういう意味ですか?

ベストアンサー1

\([^"]*\)実際には2つの中かっこ()の間にある文字セットを定義するので、中かっこを\(エスケープする必要があります。\)

\1最初のグループの内容です。

複数のグループは、複数の中かっこペアセットを使用して定義でき、増分的に番号付けされ、各グループは\n(たとえば\1\2など\3)として参照されるため、名前は次のようになります。逆参照

おすすめ記事