Как фильтровать данные в соответствии со строгим соответствием в Angular JS
Я хочу фильтровать данные на лету, когда данные предоставляются в NG-Grid в угловых. я пытаюсь добиться того, чтобы при фильтрации Nephi все данные, содержащие Nephi, содержали его.
Я предоставляю ссылку, чтобы лучше понять:
Например, если я буду искать "Нефий", то это даст только 1 результат или точный результат (ожидаемый результат) 1. Нефий
но сейчас это дает мне: 1. Нефий 2. Нефийс 3. Нефийсс
2 ответа
Решение
Фильтр принимает регулярные выражения, поэтому с помощью этого:
var filterText = 'name:^Nephi$';
Буду работать. Регулярное выражение соответствует началу строки (используя ^
), слово, которое мы хотим, затем конец строки (используя $
).
Если вы используете более новую версию angular, просто добавьте:true для точного соответствия.
<div ng-repeat="val in items | filter:{item: '!search'}:true">{{val.item}}</div>