sedでタグ取り

Post date: 2016/05/08 12:48:08

青空文庫を OpenJTalk で読まそうとして,ルビを消すためにハマってしまった.

nkf -u $1 | sed -e "s/《.*》//g" -e "s/[.*]//g" -e "s/|//g"

nkf -u $1 | sed -e "s/《[^》]*》//g" -e "s/[[^]]*]//g" -e "s/|//g"

  • ルビ《..》と見出し[...]を削除したかった
  • "s/《.*》//g" だと,その行内で一番長いところにマッチングする (例. 《...》...》)
  • 《..》の間に》が入らないように指定

Cf. 共通テーマ: 実例でわかる sed 第 2 回