[英]Trying to match filenames in file with C# REGEX
我试图从二进制文件中提取MP3文件名。 我正在尝试获取此正则表达式以匹配所有mp3和WAVE文件..这是我到目前为止的内容。
System.Text.RegularExpressions.MatchCollection m = System.Text.RegularExpressions.Regex.Matches(rosText, @"(\w:\\(?:\w+(?:\s+\w+)*\\)*[-_\w\s\d.\(\)\'\[\]]*\.mp3)",System.Text.RegularExpressions.RegexOptions.IgnoreCase);
MATCHES C:\\ mp3 \\ Miami House \\ New Adds 49 \\ Jungle_EP_(Life_In_The_Jungle_'Original_Mix')-SL-51-1(320k).mp3
不匹配C:\\ mp3 \\ Miami House \\ New Adds 49 \\ Each _&_ Every_Day_Pt。 2 (Raw_Artistic_Soul_Vocal_Mix)-AR002-1(320k).mp3
C:\\ mp3 \\ Miami House \\ New Add C:\\ mp3 \\ Miami House \\ New Adds 49 \\ Jungle_EP_(Life_In_The_Jungle_'Original_Mix')-SL-51-1(320k).wav
此处的文件示例(IN UTF-8) http://savinet.net/fileexample.txt
匹配此类文件的非常简单的正则表达式为:
string regex = @".*\.(mp3|wav)"
但是,如果您能够将文件(在这种情况下位于/tmp
目录中)提取到目录中,则可以使用:
foreach (var file in Directory.EnumerateFiles ("/tmp", "*.mp3")) {
try {
//do something
} catch {
; // optionally report error
}
}
foreach (var file in Directory.EnumerateFiles ("/tmp", "*.wav")) {
try {
//do something
} catch {
; // optionally report error
}
}
也一样
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.