python正则表达式从路径中取文件名出来不加后缀(txt)
时间: 2023-07-18 09:27:36 浏览: 175
Python库 | regex-2015.06.04-cp25-none-win32.whl
可以使用re模块进行正则匹配,以下是一个示例代码:
```python
import re
path = '/path/to/file.txt'
filename = re.findall(r'[^/\\]+(?=\.\w+$)', path)[0]
print(filename) # 输出:file
```
解释一下代码:
- `r'[^/\\]+(?=\.\w+$)'` 是一个正则表达式,用于匹配路径中的文件名,其中:
- `[^/\\]+` 表示匹配任意数量的非 `/` 和 `\` 的字符,也就是文件名的部分;
- `(?=\.\w+$)` 是一个正向前瞻,表示必须匹配以 `.` 开头,后跟任意数量的字母或数字,直到行尾的字符串,也就是文件名的后缀部分。
- `re.findall()` 函数用于在字符串中查找所有匹配正则表达式的子串,返回一个列表。
- `[0]` 取列表中的第一个元素,也就是文件名部分。
这样就可以得到不带后缀的文件名了。
阅读全文