File extension is in extensions list: Difference between revisions

insert variant 2
(new D version)
(insert variant 2)
Line 434:
 
=={{header|D}}==
===Variant 1===
 
<lang d>
import std.stdio;
Line 484:
MyData... : false
MyData : false
 
</pre>
 
 
===Variant 2===
<lang d>
import std.stdio;
import std.string;
import std.range;
import std.algorithm;
 
void main()
{
auto exts = ["zip", "rar", "7z", "gz", "archive", "A##", "tar.bz2"];
auto filenames = ["MyData.a##",
"MyData.tar.Gz",
"MyData.gzip",
"MyData.7z.backup",
"MyData...",
"MyData",
"MyData_v1.0.tar.bz2",
"MyData_v1.0.bz2"];
 
writeln("extensions: ", exts);
 
writeln;
foreach(filename; filenames)
{
bool found;
foreach(ext; exts)
{
if (filename.toLower.endsWith("." ~ ext.toLower))
{
found = true;
break;
}
}
 
writeln(filename, " : ", found);
}
 
}
 
</lang>
 
{{out}}
<pre>
extensions: ["zip", "rar", "7z", "gz", "archive", "A##", "tar.bz2"]
 
MyData.a## : true
MyData.tar.Gz : true
MyData.gzip : false
MyData.7z.backup : false
MyData... : false
MyData : false
MyData_v1.0.tar.bz2 : true
MyData_v1.0.bz2 : false
 
</pre>
Anonymous user