) Rubyは、大文字化を含む、文字列操作のための直感的な方法を提供しています:.
(方法) Rubyで文字列を結合するには、+ や <<、concat、#{}(文字列内挿)等の方法があります。例を見てみましょう。
+
<<
concat
#{}
(方法) Rubyで文字列を小文字に変換するのは簡単です。downcaseメソッドを使用します:.
downcase
(やり方) パターンマッチと文字の削除は、テキスト処理の世界では古くから行われています。正規表現 (Regular Expressions) が普及すると、それはさらに強力なツールとなりました。Rubyのgsubメソッドは、文字列中のパターンにマッチする部分を置き換えまたは削除するために広く使われています。このメソッドは、非常に汎用的であり、複雑なパターンでも扱うことが可能です。
gsub
(やり方) サブストリングの抽出はRubyが登場した1995年から存在しています。sliceメソッドや[]オペレータを使って文字列から部分文字列を取り出せます。これらは内部的に同じ機構を使用しています。正規表現は強力なパターンマッチングを提供し、複雑なパターンのサブストリングも抽出できます。sliceメソッドはslice!バージョンもあり、これを使用すると元の文字列からサブストリングを削除できます。また、範囲オブジェクトを使って複数の文字を取り出す方法も便利で、より直感的な操作が可能です。
slice
[]
slice!
(やり方) Rubyでは文字列の長さを知る方法が簡単に提供されています。lengthやsizeメソッドを使えば、文字列内の文字数が返ります。歴史的には遡ることRuby 1.8まで、マルチバイト文字(例えば日本語)に対応していませんでした。しかし、Ruby 1.9からはエンコーディングを意識した文字列処理が導入されました。bytesizeはバイト単位の長さであり、エンコーディングによって異なるので注意が必要です。また、charsを使って各文字にアクセスし、countで数えることもできます。これは文字列を配列のように扱えるためです。
length
size
bytesize
chars
count
(方法) 文字列展開はRuby初期からある機能です。#{}を使うと、その中のコードが評価され、文字列に変換されます。+を使って文字列を結合する方法もありますが、文字列展開の方が高速で、コードもきれいになります。内部的には、Rubyのインタープリタが#{}の内容を評価し、結果を元の文字列に埋め込みます。
どうやるか: Rubyには、それらの厄介な引用符を切り取るためのすばらしいテクニックがいくつかあります。gsubやdeleteメソッドを使用して作業を行うことができます。噛み砕いて考えるためのコードがこちらです:.
delete
テキスト置換は古いタイプライター時代からある。コンピュータでは初期のエディタからこの機能が備わっていた。gsub(global substitution)はRubyの強力なメソッドで、文字列や正規表現パターンを使った置換が可能。代替手段としては、subメソッドがあり、これは最初に見つかったインスタンスのみを置換する。正規表現を使えば、より複雑な検索・置換パターンを実現できる。パフォーマンス最適化には、不必要な置換ロジックを避け、正規表現を慎重に使うことが大事。
sub
使い方: 文字列を単純なパターンに対してマッチさせるには、matchメソッドを使用できます。以下では、与えられた文字列の中に「Ruby」という単語が存在するかチェックしています。
match