0
是我在AngularJS範圍字段名爲擺脫AngualrJS篩選記錄與
這始終是一個4字母的代碼,如1A22或4D23(數字,字母,數字,數字)
我想過濾掉(即未示出)的任何滿足某些條件的
- 具有2K
- 開始用5
- 開始1C 012開始
現在我知道我可以在我的ng-repeat(服務中的服務)上創建單獨的過濾器,但我認爲前進的方向是一個很好的自定義過濾器,我可以在需要過濾的一系列條件。我懷疑的正則表達式條件的字符串就是答案
/^2k|5|1C*/
任何人都可以提出建議解決這個自定義過濾器的最佳方式?由於
編輯:這是我的解決方案,正則表達式從公認的答案和以下過濾器
myApp.filter('regex', function() {
return function(input, field, regex) {
var patt = new RegExp(regex);
var out = [];
for (var i = 0; i < input.length; i++){
if(!patt.test(input[i][field]))
out.push(input[i]);
}
return out;
};
});
然後我就在我使用這個NG-重複
regex:'rid':'^(?:2K|5|1C)[A-Z0-9]+$'"
SOlid正則表達式,並設法寫過濾器去與它 – MOLEDesign