次のようなリストがあります。
GTPYANJ 695848
GTPYANJ 27811
FPORTAL3 432532
正規表現を使用してこれに変換したい:
GTPYANJ,695848,27811
FPORTAL3,432532
提案?
次のようなリストがあります。
GTPYANJ 695848
GTPYANJ 27811
FPORTAL3 432532
正規表現を使用してこれに変換したい:
GTPYANJ,695848,27811
FPORTAL3,432532
提案?
Perl ワンライナー:
perl -e 'while(<>) { chomp; ($tag, $num) = split /\s+/; $tmp{$tag} .= ",$num"; } foreach $t (sort keys %tmp) { print $t.$tmp{$t}."\n" } ' myfile.txt
マルチパスの正規表現をまとめようとするよりもはるかに簡単です。この正規表現は、正しく処理されるまでに数回壊れる可能性が高く、ソートされるデータに依存し、最後にすべてを再フォーマットするために 2 番目の正規表現が必要になる場合があります。 ..
jEdit(またはNotepad ++、または正規表現を介して検索/置換できる他のエディターにロードします。
ステップ 1 は、区切り文字がタブであることを確認することです。
次に、検索します
^(.*)\t(.*)\n\1
そしてそれを
$1\t$2,
一致するものが見つからなくなるまで、すべて検索/置換を繰り返します。