# -*- coding : utf-8 -*-
class String
def ngram n
characters = self.split(//u)
return [self] if characters.size <= n
return 0.upto(characters.size-n).collect do |i|
characters[i, n].join
end
end
end
puts "おぎやはぎですけどなにか問題でも?".ngram(2)
IyAtKi0gY29kaW5nIDogdXRmLTggLSotCmNsYXNzIFN0cmluZwogIGRlZiBuZ3JhbSBuCiAgICBjaGFyYWN0ZXJzID0gc2VsZi5zcGxpdCgvL3UpCiAgICByZXR1cm4gW3NlbGZdIGlmIGNoYXJhY3RlcnMuc2l6ZSA8PSBuCiAgICByZXR1cm4gMC51cHRvKGNoYXJhY3RlcnMuc2l6ZS1uKS5jb2xsZWN0IGRvIHxpfAogICAgICBjaGFyYWN0ZXJzW2ksIG5dLmpvaW4KICAgIGVuZAogIGVuZAplbmQKCnB1dHMgIuOBiuOBjuOChOOBr+OBjuOBp+OBmeOBkeOBqeOBquOBq+OBi+WVj+mhjOOBp+OCgu+8nyIubmdyYW0oMik=