0

私の入力はタブで区切られたこのように見えます):

Yadda yaddabla            blubb_1234          extremlylongtext, with commata
awesomo sappa             dwarf_775           extremlylongbutdifferenttext, with commata

出力は次のようになります。

Yadda yaddabla S23            blubb_1234      1234      extremlylongtext, with commata
awesomo sappa y5            dwarf_775       775       extremlylongbutdifferenttext, with commata

したがって、タブで区切られた「_」文字の後の数字のみを繰り返したいと思います。助言がありますか?:)

4

2 に答える 2

1
sed 's/_\([[:digit:]]\{1,\}\)/_\1\t\1/g'

私はこれを\t出力のタブを示すことで示しました。GNU sedを使用していない場合は、リテラルタブに置き換える必要がある場合があります。

于 2013-02-11T15:11:58.140 に答える
0

タブ区切りファイルのawkソリューション

awk -F"\t" 'BEGIN{OFS="\t";}{$2 = gensub(/_([0-9]+)/,"_\\1\t\\1","g",$2);}1' temp.txt
于 2013-02-12T01:48:05.007 に答える