Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
文件名与Python正则表达式匹配_Python_Regex_Python 3.x - Fatal编程技术网

文件名与Python正则表达式匹配

文件名与Python正则表达式匹配,python,regex,python-3.x,Python,Regex,Python 3.x,我从电子邮件中删除了一个文本文件,其中包含1个附件/邮件。附件以完全不同的格式以不同的名称呈现,例如: filename="John_wheeler 11041997 resume.pdf"; filename="Kujal_newResume(1).pdf"; filename=JohnKrasinski_Resume.pdf 我的问题是:有没有办法找到一个正则表达式模式,它可以从filename=开始搜索,一直搜索到点字符(与文件扩展名分开)?获取文件扩展名将是下一个任务,但我现在可以保

我从电子邮件中删除了一个文本文件,其中包含1个附件/邮件。附件以完全不同的格式以不同的名称呈现,例如:

filename="John_wheeler 11041997 resume.pdf";
filename="Kujal_newResume(1).pdf"; 
filename=JohnKrasinski_Resume.pdf

我的问题是:有没有办法找到一个正则表达式模式,它可以从
filename=
开始搜索,一直搜索到点字符(与文件扩展名分开)?获取文件扩展名将是下一个任务,但我现在可以保留它。请帮我解决这个问题。

以下几点如何:

(?:filename=)([^\.]*)\.(\w*)

此正则表达式返回包含您感兴趣的不同元素的不同组。

我不确定您期望的输出。但这可能会有所帮助


(?您可以尝试以下模式:
filename=“?([^.]+)

它假定点将文件名和扩展名分开

说明:

filename=“?
-按字面意思匹配
filename=
并匹配0或1撇号

([^.]+)
-匹配一个或多个不是点的字符(匹配所有字符直到点),并将其存储在捕获组中

您所需的文件名将存储在捕获组中

EXTRA:要捕获文件扩展名,可以使用以下模式:
filename=“?([^.]+)\([^;]+)

这里的附加内容是
\.([^”]+)
:将点与
\.
逐字匹配。然后它将
以外的一个或多个字符与模式
[^”]+
匹配,并将其存储在第二个捕获gropup中


您的问题不清楚。请提供您拥有的数据/输入、您尝试过的代码、预期输出和您得到的错误。
(?<=filename=)[\"]?(\w.*[.].*)(?<=\w)[\"]?
(?<=filename=)[\"]?(\w.*)[\.]