形態素解析ではなく、ただ単純に文字を分解したかったので、そのためのプログラム。
連続する数字、アルファベット、漢字、ひらがな、カタカナを抜き出して、配列に入れる。
def split_word(str)
word_list = Array.new
while str != "" do
case
when str.sub!(/(^[一-龠]+)/u, "")
word_list.push $1
when str.sub!(/(^[ぁ-ん]+)/u, "")
word_list.push $1
when str.sub!(/(^[ァ-ヴ]+)/u, "")
word_list.push $1
when str.sub!(/(^[a-zA-Z]+)/, "")
word_list.push $1
when str.sub!(/(^[0-9]+)/, "")
word_list.push $1
else
str.slice!(0..0)
end
end
word_list
end
str = "今日12/24日は、とてもいい天気です。"
result = split_word(str)
result.each do |w|
print w, " "
end
print "\n"
実行結果
今日 12 24 日 は とてもいい 天気 です
最終更新:2009年12月08日 23:46