cyrillic-latin-search
v0.8.5
Published
Cyrillic Latin Search is convenient for Cyrillic Latin search engines because you can write 'Celavica' ('Bald letters') 'c' for 'č', 's' for 'š', 'и' for 'й',...
Maintainers
Readme
cyrillic-latin-search 🔤
Cyrillic Latin Search is convenient for Cyrillic Latin search engines because you can write "Celavica" ("Bald letters") "c" for "č", "s" for "š", "и" for "й",...
Examples
| Latin | Celavica | includes | | ------- | -------- | -------- | | Niš | Nis | true | | Ćao | Cao | true | | Šišmiš | Sismis | true | | čeljavo | Celjavo | false |
| Cyrillic | Celavica | includes | | -------- | -------- | -------- | | Нӣш | Ниш | true | | үй | үи | true | | Хороший | Хорошии | true | | Добрий | добрии | false |
The last ones are false because functions are Case Sensitive.
Installation
npm install cyrillic-latin-search
# or
yarn add cyrillic-latin-searchUsage
import { includes, indexOf, setDefaultAlphabet } from "cyrillic-latin-search";
// latin search
includes("Lep je grad, Niš", "Nis"); // => true
indexOf("Lep je grad, Niš", "Nis"); // => 13
// cyrillic search
includes("Привет мой друг", "мои", "cyrillic"); // => true
setDefaultAlphabet("cyrillic"); // you can set 'latin' or 'cyrillic'
indexOf("Привет мой друг", "мои"); // => 7Documentation
Default alphabet is latin. But you can change that with function setDefaultAlphabet
Types
type Alphabet = "cyrillic" | "latin";Functions
Returns true if searchString appears as a substring in string str.
includes(str: string, searchString: string, alphabet?: Alphabet): booleanReturns the position of the first occurrence of a searchString or -1 if searchString is not occurring in string str.
indexOf(
str: string,
searchString: string,
alphabet?: Alphabet,
position?: number // start of the search (by default 0)
): number;Finding all the occurrences of an searchString in str and returning array of positions or empty array if it is not present.
allIndexOf(
str: string,
searchString: string,
alphabet?: Alphabet,
position?: number // start of the search (by default 0)
): number[]Sets defaultAlphabet witch is used by other functions.
Valid values are: "cyrillic" or "latin".
setDefaultAlphabet(alphabet: Alphabet): voidGets defaultAlphabet witch is used by other functions.
By default this will return "latin"
getDefaultAlphabet(): stringConverts string str to Celavica depending on defaultAlphabet or passed argument alphabet.
(eg.)
// for alphabet = "latin"
Niš -> Nis,
// for alphabet = "cyrillic"
Хороший -> Хорошии
convertToCelavica(str: string, alphabet?: Alphabet): stringGets dictionary that is used for conversion from Cyrillic/Latin to Celavica based on alphabet.
getDict(alphabet?: Alphabet): Record<string, string>