首页 > 解决方案 > 正则表达式:在句号之后,最后一个斜杠之前查找所有内容

问题描述

我发现了一些类似的正则表达式问题,但我正在努力将这些答案转化为我想要做的事情。我有一个这样的字符串:

Y:\Path\sub path\name_of_folder.microphones.flac24\trackname01.flac

我想返回“flac24”

name_of_folder 中的句点数会有所不同。我已经想出了如何隔离最后两个斜杠之间的文本,但我现在似乎无法在最后一段之后得到该部分:

(?<=\\)[^\\]*(?=\\[^\\]*$)

谢谢!

标签: pythonregex

解决方案


对于正则表达式,我会这样做:

\.([^.\\]+)\\[^\\]+$

演示

既然你标记了这个 Python,你也可以考虑只使用Pathlib

from pathlib import PureWindowsPath 

p=PureWindowsPath(r'Y:\Path\sub path\name_of_folder.microphones.flac24\trackname01.flac')

>>> p.parts[-2].split('.')[-1]
flac24

推荐阅读