文字列の連結・インデックス・改行削除

スポンサーリンク
スポンサーリンク
ライフスタイル関連のコンテンツ
お金 | 仕事 | 勉強 | プライベート | 健康 |
プログラミング関連のコンテンツ
C言語/C++入門 | Ruby入門 | Python入門 | プログラミング全般

Rubyでの、文字列を操作するメソッドの続きです。
と、その前に、いくつかの言語で文字列を操作するメソッド、関数の比較で役立つページを発見しました。

スポンサーリンク

参考:文字列操作の比較表: Ruby, Python, JavaScript, Perl, C++ – bkブログ

では、Rubyのを見てみます。

puts "---文字列を+で連結"
ll = "Ruby, JavaScript, Perl, PHP, "
cp = "C, C++, Java"
p ll + cp + " are " + "Programming Languages" 
p ll
 
puts "--- <<と+で連結"
ll << cp + " are " + "Programming Languages"    # 破壊
p ll
 
puts "--- concatで連結"
ll.concat(cp)    # 破壊
p ll
 
puts "---文字列をインデックスで操作"
str = "abcdefghijk"
p str[2]        # 文字コード(ASCIIコード)を返す
p str[2].chr    # 文字コードを文字にするにはchrメソッド
p str[2, 4]        # バイト数を指定すると文字列を返す
p str
str[2, 4] = "" # 4バイト分削除。str.slice!(2, 4)でも同じ
p str
# p str[2, 4].chr        # エラー
 
puts "---改行を削除"
str = "abcdef\n"
str.chomp!    # 破壊
p str
 
puts "---文字列を検索・置換"
str = "aaabbbcccdddcccbbbaaa"
p str.index("ccc")
p str.rindex("ccc")        # 右(right)から検索
p str.include?("ddd")    # true
p str.include?("eee")    # false
 
p str.sub!(/bbb/, 'BBB')    # 最初のbbbをBBBに置換
p str.gsub!(/aaa/, 'AAA')    # 全部のaaaをAAAに置換
 

実行結果。

---文字列を+で連結
"Ruby, JavaScript, Perl, PHP, C, C++, Java are Programming Languages"
"Ruby, JavaScript, Perl, PHP, "
--- <<と+で連結
"Ruby, JavaScript, Perl, PHP, C, C++, Java are Programming Languages"
--- concatで連結
"Ruby, JavaScript, Perl, PHP, C, C++, Java are Programming LanguagesC, C++, Java
"
---文字列をインデックスで操作
99
"c"
"cdef"
"abcdefghijk"
"abghijk"
---改行を削除
"abcdef"
---文字列を検索・置換
6
12
true
false
"aaaBBBcccdddcccbbbaaa"
"AAABBBcccdddcccbbbAAA"
スポンサーリンク
 
スポンサーリンク