Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【Ruby3.x】String::delete_prefix!()メソッドの使い方

delete_prefix!メソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

delete_prefix!メソッドは、RubyのStringクラスに属し、文字列オブジェクトの先頭から指定された接頭辞(プレフィックス)を削除するメソッドです。このメソッドは、レシーバーである元の文字列オブジェクト自体を直接変更する「破壊的」な操作を行います。

引数には、削除したいプレフィックスを文字列として渡します。メソッドが呼び出されると、レシーバーの文字列がこの引数で指定されたプレフィックスで始まっているかどうかが確認されます。もし始まっていた場合、そのプレフィックスは文字列の先頭から削除され、変更されたレシーバー自身(元の文字列オブジェクト)が戻り値として返されます。一方、レシーバーの文字列が指定されたプレフィックスで始まっていない場合は、文字列は何も変更されず、そのままのレシーバー自身が戻り値として返されます。

このメソッドは、例えば、共通の接頭辞を持つ複数のファイル名からその部分を取り除きたい場合や、特定のフォーマットを持つデータ文字列から固定の先頭部分を削除して、残りのデータを取り出したい場合などに役立ちます。メソッド名の末尾にある!(エクスクラメーションマーク)は、このメソッドが元のオブジェクトの内容を直接変更する破壊的な操作であることを示しています。元の文字列を変更せずに新しい文字列として結果を得たい場合は、非破壊的なdelete_prefixメソッドを使用してください。このように、文字列の先頭部分を効率的に削除し、元のオブジェクトを変更する必要がある場面で利用されるメソッドです。

構文(syntax)

1str.delete_prefix!(prefix)

引数(parameters)

prefix

  • prefix: 削除する接頭辞を指定する文字列

戻り値(return)

String or nil

指定された接頭辞を文字列から削除した結果を返します。接頭辞が削除された場合は変更された文字列を、削除されなかった場合はnilを返します。

関連コンテンツ

関連プログラミング言語