2016-10-25 23 views
0

私はグロブ文字列とファイルパスを持っています。文字列がグロブと一致するかどうかをファイルパスで調べることは可能ですか?グローブ文字列の比較

let path = ['/home/location/file.scss','/home/location/file.cat']; 
let pattern = '**/*.{sass,scss}'; 

path.forEach(file => { 
    if(/* Test success */) { 
     // read file and process it's content 
    } 
}); 
+2

npmで利用可能な複数のグロブまたはミニマッチャーを使用するか、自分で書き込みます。 –

答えて

0

regexを使用できますか?あなたはパターンが/\.s[ac]ss$/iとしてregexでに変換した後、

path.forEach(file => { 
    if (file.match(pattern)) { 
    } 
}); 

を行うことができますので場合には、あなたはグロブでパターンを記述する必要があり、またglob-to-regexpあります。

+1

これはうまくいくかもしれないと思います... –

+0

これを動作させるためにリンクを使用することができました。ありがとう! –

0

あなただけのファイルで何かをしようとしている場合、私は違っそれを使用することになりますがminimatchnpm install minimatch

が次にあなたが

var minimatch = require("minimatch"); 

let path = ['/home/location/file.scss','/home/location/file.cat']; 
let pattern = '**/*.{sass,scss}'; 

path.forEach(file => { 
    if(minimatch(file, pattern) { 
     // read file and process it's content 
    } 
}); 

を使用してテストアレイに対して一致させることができますインストール、または使用http://github.com/isaacs/node-glob