並べ替え順序このリストを特定の順序で並べ替えます。

並べ替え順序このリストを特定の順序で並べ替えます。

これには多数のソート問題があることがわかりますが、私のユースケースではこれを解決することはできません。

R(Ubuntu 16.04)でリストを並べ替えようとしていますが、どうするかわかりません!私は混乱してLC_ALL=C設定しようとしましたが、collate結果を別の方法で並べ替えることができますが、必要な結果を得ることはできません。これが私が必要とするものです:

2014_Actual / 2014_Target / 2014_Percent / 2015_Actual / 2015_Target / 2015_Percent

Windowsで私が使用するトリックは、下線を削除して 2014_Actual / 2014_Target / 2014Percent / 2015_Actual / 2015_Target / 2015Percentユーザーが許可できるようにすることです。しかし、明らかにこれは下線を無視するので、Linuxでは動作しません。

そのレベルで上記のソート順序を取得する方法についてのアイデアを持っている人はいますかLC_ALL

よろしくお願いします。

編集する:明確性の追加:問題は、Linuxで上記の内容を並べ替えるときに下線を無視して次のことを提供することです。
2014_Actual / 2014Percent / 2014_Target / 2015_Actual / 2015Percent / 2015_Target

ベストアンサー1

あなたの質問を完全に理解したかどうかはわかりません。しかし、Unixでこれを行ったのであれば、これをやったでしょう。

sed -e 's/Actual/1Actual/' -e 's/Target/2Target/' -e 's/Percent/3Percent/' |
    sort |
    sed -e 's/1Actual/Actual/' -e 's/2Target/Target/' -e 's/3Percent/Percent/'

おすすめ記事