Поиск коллекции в Typescript для частичного совпадения строк - PullRequest
0 голосов
/ 21 апреля 2020

Я хочу найти коллекцию в машинописи, так как мы можем искать в SQL и linq с оператором like в sql и содержать метод в linq, то есть в sql

name like ‘%searchString%’

и в linq

query = query.Where(x => x.UserName.ToLower().Contains(queryObj.SearchStr.ToLower()));

Есть ли способ, которым мы можем сделать эту операцию в машинописи? Для поиска в коллекции строк элементов с частичным совпадением?

Спасибо

Ответы [ 3 ]

2 голосов
/ 21 апреля 2020

Используйте функцию массива Javascript filter. filter возвращает элементы в массиве, где выражение возвращает истинный результат.

Вы можете использовать строковую функцию includes, чтобы проверить, существует ли строка внутри другой строки.

const values = [
  'abc',
  'aYz',
  'xyz'
];

const filtered = values.filter(x => x.toLocaleLowerCase().includes('y'));

console.log(filtered);
1 голос
/ 21 апреля 2020

Чтобы найти одно значение. Результат не массив здесь. Возвращает Берлин.

const values = ['paris', 'berlin', 'delhi', 'istanbul'];

const filtered = values.find(x => x.toLocaleLowerCase().includes('in'));

console.log(filtered);
1 голос
/ 21 апреля 2020
const arr: string[] = ['paris', 'berlin', 'delhi', 'istanbul'];

const result: string[] = arr.filter(key => key.toLowerCase().includes('in'));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...