🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Q&A

解決済

3回答

545閲覧

Ruby 文字列の置換

shochaso

総合スコア13

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

1グッド

0クリップ

投稿2019/11/13 15:59

Ruby初心者です。[0, 1]がどういう風に指定をしているのかがわかりません。
詳しい方教えてください。

文字列の置換Ruby

文字列の置換

str = "I Like Ruby"
str[0, 1] = "You"
p str # => "You Like Ruby"

DrqYuto👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

これがわからないとは、勉強方法(勉強教材)を考え直したほうが良いと思います。

str[0, 1] = ~~
は、
strの文字列オブジェクトの0文字目(先頭)から1文字の部分を=の右辺の文字列で書き換えます。
つまり、この場合"I""You"に書き換えています。

投稿2019/11/13 16:09

otn

総合スコア85886

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

shochaso

2019/11/13 16:11

ありがとうございます。理解できました。
guest

0

str[0,1]は、0が「何番目からか」、1が「長さ」を表している。
"I Like Ruby"の0番目の文字はIで長さが1なのでIの部分だけということ。

投稿2019/11/13 16:07

yokuda

総合スコア138

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

shochaso

2019/11/14 12:14

ありがとうございます。
guest

0

僕もよく分からなかったので,出力してみました.

str = "I Like Ruby" p str[0] p str[1] p str[2] p str[0,0] p str[0,1] p str[0,2] p str[0,3] p str[1,0] p str[1,1] p str[1,2] str[0,1] = "You" p str # => "You Like Ruby"

"I" " " "L" "" "I" "I " "I L" "" " " " L" "You Like Ruby"

となります.
I Like Ruby
012345678910
となっていて,
0番目から1文字目の
"I"を"You"に変えています.

参考
[] (String) - Rubyリファレンス
https://ref.xaio.jp/ruby/classes/string/element_ref
"位置と数
str[idx, len]
引数に整数を2つ指定すると、idxの位置からlen文字の文字列を返します(位置は0が1番目、1が2番目、...です)。範囲外の位置を指定すると、nilが返ります。"

投稿2019/11/16 17:26

DrqYuto

総合スコア432

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問