sedを使用して最後の数字と最初の文字の間にタブ文字を追加する

sedを使用して最後の数字と最初の文字の間にタブ文字を追加する

各数字と文字の間にタブを追加したり、文字列の他の場所にタブとスペースを追加/削除したりするための非常に便利な投稿をたくさん読んでいましたが、これらのソリューションを現在の質問に適用するのが難しいので、次のように考えました。 。スタックに追加する価値があります!私は次のような多くの遺伝データを持っています。

chr1    1324000 1325000tgagggtctgctg...
chr1    1318000 1319000gggactgcagctg...

など。

最後の数字と最初の文字の間にタブ文字を追加する方法はありますか?シーケンスの長さは異なるため、タブが常に同じ位置にあるとは限りません。また、最初の数値セットが常にゼロで終わるわけではありません。ただし、タブ文字は常に最後の数字の後に続きます。私の考えでは、次のようになります。

sed -e 's/\([[0-9]\+]\)/[\t/'

しかし、もちろんそれは動作しません。この場所にタブ文字を配置するようにsedにどのように指示しますか?

希望の出力:

chr1    1324000 1325000  tgagggtctgctg...
chr1    1318000 1319000  gggactgcagctg...

ベストアンサー1

sed -E 's/([0-9])([acgtACGT])/\1\t\2/' file

働く!ありがとう、サイラス。

おすすめ記事