LoginSignup
1
0

More than 3 years have passed since last update.

文字単位でスペース区切りにするコマンド

Last updated at Posted at 2019-12-19

問い

文字レベルseq2seqなど、文字列を文字単位で空白区切りにしたいことがある。
いちいちスクリプトを書くのは面倒なので、これをlinuxコマンドでやりたい。
※ pythonでは' '.join(list(string))でできる。

input.txt
アンパンマングミRTA (^^)
パッケージ開封から全てのグミを取り出すまでのタイムを計測
オブラート及びグミに傷を付けてはならない
stdout
ア ン パ ン マ ン グ ミ R T A _ ( ^ ^ )
パ ッ ケ ー ジ 開 封 か ら 全 て の グ ミ を 取 り 出 す ま で の タ イ ム を 計 測
オ ブ ラ ー ト 及 び グ ミ に 傷 を 付 け て は な ら な い

答え

sedで頑張る。もとからある半角スペースは_でエスケープ。

cat input.txt | sed -e 's/ /_/g' | sed -E 's/(.)/ \1/g' | sed -e 's/^ //g'

もうすこし賢い方法がありそう。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0