次のコードがあります:
url = 'abcdc.com'
print(url.strip('.com'))
私は予想しました:abcdc
私が得たもの:abcd
今私がやります
url.rsplit('.com', 1)
もっと良い方法はあるでしょうか?
見るPython では .strip/.rstrip/.lstrip 文字列メソッドはどのように機能しますか?最初の試みが何を行っているのかを具体的に説明します。
ベストアンサー1
strip
「この部分文字列を削除する」という意味ではありません。を文字セットとしてx.strip(y)
扱い、そのセット内の文字を の両端から削除します。y
x
Python 3.9以降では、removeprefix
そしてremovesuffix
文字列の両側から部分文字列全体を削除するメソッド:
url = 'abcdc.com'
url.removesuffix('.com') # Returns 'abcdc'
url.removeprefix('abcdc.') # Returns 'com'
関連するPython拡張提案はペップ616。
Python 3.8以前では、endswith
スライス:
url = 'abcdc.com'
if url.endswith('.com'):
url = url[:-4]
または正規表現:
import re
url = 'abcdc.com'
url = re.sub('\.com$', '', url)