「あいうえお」を出力したいのですが、小文字の「ぁぃぅぇぉ」が入ってしまいます。
一応書けましたが、他にいい方法があれば教えて下さい。
text=[*"あ".."お"] puts text.join puts text.each_slice(2).map(&:first).join #=>あぃいぅうぇえぉお #=>あいうえお
参考
- Ruby | 配列の奇数番目と偶数番目を取り出す方法 - Qiita
https://qiita.com/ddgg7755/items/ed7db4b342b783620b41
"ary = [1,2,3,4,5,6,7,8,9,10]
odd = ary.each_slice(2).map(&:first)
even = ary.each_slice(2).map(&:last)
p odd #=>[1,3,5,7,9]
p even #=>[2,4,6,8,10]
"
- Ruby - 配列を1つ飛ばしずつで参照したい|teratail
https://teratail.com/questions/148277
"array = [1, 2, 3, 4, 5]
p array.each_slice(2).map(&:first) # => [1, 3, 5]"
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/09/23 04:56
回答2件
0
技術的興味ということなので、求められている回答はこういうことなのかなあというのを。
Unicodeではひらがなは
ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでと…
のように並んでいます。
なので素直に順番に並べると「あぃいぅうぇえぉお」などとなります。
そうでなく清音だけを取りたいなどとなると、「あ〜お」では単純な数値計算で求められますが汎用的な方法ではないので、どの範囲でも求められるようにするにはテーブルを引くしかありません。
Unicodeには文字の集合や文字の関係を集めたデータが多数あり、多くの言語で使えます。
しかし「ひらがなの小文字でない清音だけ」を集めた表は確か無かったと思います。
自分でデータを用意するのが手軽で、最も望ましい方法だと思います。
が、無理やり方法を考えると、Unicodeの分解で(半)濁点を除いたり、collationで小文字や(半)濁点付き文字と通常文字の同一視ができそうな気はします。
投稿2019/09/23 13:51
編集2019/09/25 01:03総合スコア3047
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/09/24 18:23 編集
2019/09/24 17:58
2019/09/25 01:10
2019/09/25 01:11
2019/09/25 01:18
2019/09/25 01:27 編集
2019/09/25 04:52
2019/09/25 05:00
2019/09/25 11:30
2019/09/25 15:17
2019/09/25 15:21
2019/09/25 15:24
2019/09/25 15:25
2019/09/25 15:31
2019/09/25 15:35
2019/09/25 15:37
2019/09/25 15:39
2019/09/25 15:46
2019/09/25 15:51
2019/09/25 15:53
2019/09/25 15:55
2019/09/25 15:57
2019/09/25 16:15
2019/09/25 16:17
2019/09/25 16:26
2019/09/25 16:30
0
ベストアンサー
元はRange
なので、step
で。
Ruby
1("あ".."お").step(2).to_a.join
#追記
Array
に変換済みの場合も、変数に代入してあるなら、size
が取れるので、
Ruby
1text=[*"あ".."お"] 2text.values_at(*0.step(text.size,2)).join
投稿2019/09/22 11:59
編集2019/09/22 14:51総合スコア85888
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/09/22 12:42
2019/09/23 02:07
2019/09/23 05:01
2019/09/23 05:07
2019/09/23 08:59
2019/09/23 11:55
2019/09/23 11:59
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。