simple-cat
TypeScript icon, indicating that this package has built-in type declarations

1.0.98 • Public • Published

Simple-cat это простой инструмент для нечеткого поиска, поиска с опечатками, приблизительного совпадения строк.

Zero-dependency, меньше 2Kb в сжатом виде

Simple-cat is a simple tool for fuzzy earch, and approximate string matching.

Zero-dependency, less than 2Kb in compressed form

Установка

npm install simple-cat

Демо

Примеры

import { SimpleCat } from "simple-cat"

const items = [
    {
      options: ['Премудрый пескарь'],
      data: {id: 1},
    },
    {
      options: ['Ясная погода'],
      data: {id: 2},
    },
    {
      options: ['Ромео и Джульетта'],
      data: {id: 3},
    },
    {
      options: ['Соколиная охота'],
      data: {id: 4},
    },
    {
      options: ['Ясный код'],
      data: {id: 5},
    },
        {
      options: ['Отцы и дети'],
      data: {id: 6},
    },
    {
      options: ['У меня нет сна уже 3 день'],
      data: {id: 7},
    },
    {
      options: ['У меня даже пня нет'],
      data: {id: 8},
    },
  ];

const simpleCat = new SimpleCat(items);

simpleCat.match('пагода', 3);
-> {
  "scores": [230,125],
  "indexes": [1,0],
  "options": [0,0]
}

const result = simpleCat.match('пагода', 3);
Array.from(result.indexes).map((index) => items[index]);
-> [
  {"options":["Ясная погода"],"data":{"id":2}},
  {"options":["Премудрый пескарь"],"data":{"id":1}}
]

const result = simpleCat.match('пискарь', 3);
Array.from(result.indexes).map((index) => items[index]);
-> [
  {
    "options":["Премудрый пескарь"],
    "data":{"id":1}
  }
]

const result = simpleCat.match('ахота', 3);
Array.from(result.indexes).map((index) => items[index]);
-> [
  {
    "options":["Соколиная охота"],
    "data":{"id":4}
  }
]

const result = simpleCat.match('ясный', 3);
Array.from(result.indexes).map((index) => items[index]);
-> [
  {
    "options":["Ясный код"],
    "data":{"id":5}
  },{
    "options":["Ясная погода"],
    "data":{"id":2}
  }
]

const result = simpleCat.match('ромио', 3);
Array.from(result.indexes).map((index) => items[index]);
-> [
  {
    "options":["Ромео и Джульетта"],
    "data":{"id":3}
  }
]

Package Sidebar

Install

npm i simple-cat

Weekly Downloads

1

Version

1.0.98

License

MIT

Unpacked Size

52.5 kB

Total Files

12

Last publish

Collaborators

  • marat_bektemirov