首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >regex:模式无法匹配我正在寻找的

regex:模式无法匹配我正在寻找的
EN

Stack Overflow用户
提问于 2021-11-01 09:49:26
回答 3查看 108关注 0票数 1

下面的代码试图根据双字符从目录中检索文件名:

代码语言:javascript
运行
复制
import re

string = 'I:/Etrmtest/PZMALIo4/ETRM841_FX_Deals_Restructuring/FO_PRE\\abo_st_gas_dtd.csv'
pattern = r'(?<=*\\\\)*'
re.findall(pattern,string)

背后的理由是,文件的名称总是在double \之后,所以我尝试查找任何字符串,该字符串被任何以\结束的文本所取代。

从无到有,当我应用此代码时,会得到以下错误:

代码语言:javascript
运行
复制
error: nothing to repeat at position 4

我做错了什么?

编辑:,我正在寻找的具体输出是将字符串'abo_st_gas_dtd_csv'作为匹配。

EN

Stack Overflow用户

回答已采纳

发布于 2021-11-01 09:55:50

您的模式只是一个外观,它本身无法与任何东西相匹配。我将使用这种re.findall方法:

代码语言:javascript
运行
复制
string = 'I:/Etrmtest/PZMALIo4/ETRM841_FX_Deals_Restructuring/FO_PRE\\abo_st_gas_dtd.csv'
filename = re.findall(r'\\([^.]+\.\w+)$', string)[0]
print(filename)  # abo_st_gas_dtd.csv
票数 2
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69795170

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档