私は2つの配列を持っているとしましょう:1つは正規表現で、もう1つは入力です。それでは、出力と読みやすさの面で、出力のようなものをするのに最適な方法は何ですか?どのように配列の要素を正規表現でjavascriptで配列にフィルタリングできますか?
var regex = [
'/rat/',
'/cat/'
'/dog/',
'/[1-9]/'
]
var texts = [
'the dog is hiding',
'cat',
'human',
'1'
]
最終結果は私が考えていたことreduce
ような何かをした、
result = [
'human'
]
です:
// loop by text
for (var i = texts.length - 1; i >= 0; i--) {
// loop by regex
texts[i] = regex.reduce(function (previousValue, currentValue) {
var filterbyRegex = new RegExp("\\b" + currentValue + "\\b", "g");
if (previousValue.toLowerCase().match(filterbyRegex)) {
delete texts[i];
};
return previousValue;
}, texts[i]);
}
しかし、読めないということでしょうか?多分私は考えていない別の方法があります。
これをhttp://stackoverflow.com/questions/13107048/javascript-desconstrutioning-menuでご覧ください。 –
@IamAndyこの質問は、この質問とどのように遠隔で関連していますか? – Alnitak