Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonで文字列の末尾から部分文字列を削除する方法

Pythonで文字列の末尾から特定の部分文字列を削除したい場合は、まずその文字列が対象の部分文字列で終わっているかどうかを確認します。終わっている場合は、スライスを使って部分文字列を取り除いた残りの部分だけを取得します。

endswith()とスライスを使う方法

以下は、rchop関数を実装した例です。文字列が指定した末尾と一致するかをendswith()で判定し、一致すればスライスで末尾を切り取ります。

def rchop(string, ending):
    if string.endswith(ending):
        return string[:-len(ending)]
    return string

chopped_str = rchop('Hello world', 'orld')
print(chopped_str)

このコードを実行すると、次のような出力が得られます。

Hello w

正規表現を使う方法

処理速度がそれほど重要でない場合は、reモジュールの正規表現を使う方法も便利です。$は文字列の末尾を表すため、末尾に一致する部分だけを置換して削除できます。

>>> import re
>>> re.sub('orld$', '', 'Hello world')
'Hello w'

まとめ

シンプルなケースではendswith()とスライスを組み合わせた方法が高速で推奨されます。一方、より柔軟なパターンマッチングが必要な場合には正規表現が有効です。用途に応じて使い分けるとよいでしょう。

  1. 【初心者向け】Pythonでリストから要素を削除する4つの方法|pop()・remove()・del・clear()の使い方

    Pythonのリスト(list)は線形データ構造の一つで、要素が連続したメモリ領域に格納され、各要素にはインデックスを使ってアクセスできます。 プログラミングをしていると、リストから特定の要素を削除したい場面によく出会います。Pythonにはそのための組み込み機能がいくつか用意されており、目的に応じて使い分けることが大切です。この記事では、代表的な4つの方法「pop()」「remove()」「del」「clear()」をコード例とともに解説します。 1. pop():インデックスを指定して削除する pop() は、引数として渡したインデックス位置にある要素を削除します。さらに、削除された要素を

  2. 【Python】Tkinterでラベルのテキストを削除する方法をわかりやすく解説

    Tkinterは、PythonでGUIベースのアプリケーションを作成・開発するための標準ライブラリです。この記事では、何らかのテキストが表示されているラベルから、そのテキストを削除する方法を解説します。 ラベルからテキストを削除するには、ラベルの表示を切り替えるトリガーとして機能するボタンを作成します。具体的には、config()メソッドを使ってラベルのtext属性を空の文字列に書き換えます。 サンプルコード # Tkinterライブラリをインポート from tkinter import * # tkinterフレームのインスタンスを作成 win = Tk() # ウィンドウのサイズを