RubyでStringを配列に変換する
rubyでStringを配列に変換する方法です。
使う関数は
split(pattern)
です。
たとえば
080-1234-5678
を
tel = '080-1234-5678' tel.split('-')
すると
["080", "1234", "5678"]
という感じに配列に変換してくれます。
配列に分割出来なかったら
例えば、
“00-00"を'-‘で配列にすると
"00-00".split('-')
以下のような結果になりますが
["00", "00"]
もし、"00-00"を'=‘で分割しようとすると
"00-00".split('=')
結果は、以下のように、その文字列自体を配列に入れて返してくれます
["00-00"]
正規表現を使って分割
これまで、文字列を使って分割してきましたが、正規表現を使って分割することもできます。
’32145617741345’なんて文字列を、'1'で分割するときに
'32145617741345'.split('1')
と書いてもいいですが、
'32145617741345'.split(/1/)
としても、以下のような結果が取得できます。
["32", "456", "774", "345"]
今回の例だと単純過ぎるので、そんな使い方はあまりしないと思いますが、 もっと複雑なパターンで分割したいときなどは、正規表現も有効に使えると思います。
関連記事
恋するプログラム―Rubyでつくる人工無脳 (プレミアムブックス版)
- 作者: 秋山智俊
- 出版社/メーカー: マイナビ出版
- 発売日: 2016/11/28
- メディア: 単行本
- この商品を含むブログを見る