Skip to content

Replace Ns

Zettsu Tatsuya edited this page Dec 8, 2016 · 1 revision

文中の「ん」を「ン」に置き換えるワンライナー

動作

  • ひらがなに挟まれた「ん」を「ン」に置き換える。ただし連続する「ん」は置き換えない。
  • 直前がひらがなで、直後が単語境界、句読点、全角!、漢字である「ん」も、「ン」に置き換える
  • 直前が漢字で、直後がひらがなである「ん」も、「ン」に置き換える
  • 先頭の「ん」は置き換えない

コード

ruby -ne 'puts $_.gsub(/([\p{hiragana}&&[^ん]])ん(?=\b|[一-龠々、。!\p{hiragana}&&[^ん]])|([一-龠々])ん(?=[\p{hiragana}&&[^ん]])/, "\\1\\2ン")'