>>> import os
>>> os.path.splitext("1.1.1.1.1.jpg")
('1.1.1.1.1', '.jpg')
No need for regex. os.path.splitext
is your friend:
os.path.splitext('1.1.1.jpg')
>>> ('1.1.1', '.jpg')
If I had to do this with a regex, I'd do it like this:
s = re.sub(r'\.jpg$', '', s)
You can use stem method to get file name.
Here is an example:
from pathlib import Path
p = Path(r"\\some_directory\subdirectory\my_file.txt")
print(p.stem)
# my_file
Source: Stackoverflow.com