我正在尝试编写一个查看文件夹中文件的小应用程序,并根据该名称执行操作。
文件的一个例子是:
CSI Miami S04E21 720p HDTV X264-DIMENSION.avi
那是一部叫做CSI迈阿密的电视节目......它是第4季,第21集,它是一个720p版本。
我有一个像这样的正则表达式:
即可。?CSI。+?迈阿密。+?720P。吗
但这失败了。
我认为它是''CSI和迈阿密和720p的任何字符串。但是,它永远不会奏效。似乎要求所有的话都在一起。但是因为文件名中包含S04E21,所以正则表达式失败了......我想。
你能发现错误吗?
答案 0 :(得分:2)
根据您的正则表达式的风格以及您的匹配方式,您可能会遇到任何问题,但您可能希望从这开始:
.*?CSI.+?Miami.+?720p.*
这将匹配文件名的开头和结尾,以防你正在调用的是试图匹配整个字符串。
答案 1 :(得分:0)
(?=.*CSI)(?=.*Miami)(?=.*720p)
或
(?=[\S\s]*CSI)(?=[\S\s]*Miami)(?=[\S\s]*720p)