これらのいずれかのようなファイル名がある場合:
1.1.1.1.1.jpg
1.1.jpg
1.jpg
拡張子なしでファイル名のみを取得するにはどうすればよいですか?正規表現は適切でしょうか?
これらのいずれかのようなファイル名がある場合:
1.1.1.1.1.jpg
1.1.jpg
1.jpg
拡張子なしでファイル名のみを取得するにはどうすればよいですか?正規表現は適切でしょうか?
回答:
ほとんどの場合、正規表現を使用しないでください。
os.path.splitext(filename)[0]
これ.bashrc
により、名前全体を保持することにより、ファイル名を正しく処理することもできます。
basename[:-len(".tar.gz")]
します。
git-1.7.8.tar
です。発信者が削除したいドットの数を正しく推測する方法はないためsplitext()
、最後のドットのみを削除します。のようなエッジケースを処理したい場合は.tar.gz
、手動で行う必要があります。明らかに、で終わるので、すべてのドットを取り除くことはできませんgit-1
。