Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

@marketto/diacritic-remover

Marketto6.5kMIT1.0.8TypeScript support: included

Tool to replace diacritics in strings

diacritic, remover, replace, accent, typescript

readme

diacritic-remover

NPM Version NPM Downloads Dependency status Dev dependency status Quality Gate Coverage Maintainability Reliability Build Status LICENSE Blog Buy me a coffee

Typescript library to handle and remove diacritics from strings

CHANGELOG

INSTALLATION

NPM

`{r, engine='bash', global_install} npm i -s @marketto/diacritic-remover

### YARN
```{r, engine='bash', global_install}
yarn add @marketto/diacritic-remover

NodeJs

const DiacriticRemover = require('@marketto/diacritic-remover');
const diacriticRemover = new DiacriticRemover();

ES6

import DiacriticRemover from '@marketto/diacritic-remover';
const diacriticRemover = new DiacriticRemover();

TypeScript

import DiacriticRemover from '@marketto/diacritic-remover';
const diacriticRemover = new DiacriticRemover();

Script

<script src="https://unpkg.com/@marketto/diacritic-remover/dist/diacritic-remover.bundle.min.js"></script>
<script>
    const diacriticRemover = new DiacriticRemover();
</script>

L10N

NodeJs

const DiacriticRemover = require('@marketto/diacritic-remover');
const i18n_global = require('@marketto/diacritic-remover/dictionaries/i18n/global.json');
const i18n_it = require('@marketto/diacritic-remover/dictionaries/i18n/it.json');
const diacriticRemover = new DiacriticRemover(i18n_it);

ES6

import DiacriticRemover from '@marketto/diacritic-remover';
import i18n_global from '@marketto/diacritic-remover/dictionaries/i18n/global.json';
import i18n_it from '@marketto/diacritic-remover/dictionaries/i18n/it.json';
const diacriticRemover = new DiacriticRemover(i18n_it);

TypeScript

import DiacriticRemover from '@marketto/diacritic-remover';
import i18n_global from '@marketto/diacritic-remover/dictionaries/i18n/global.json';
import i18n_it from '@marketto/diacritic-remover/dictionaries/i18n/it.json';
const diacriticRemover = new DiacriticRemover(i18n_it);

Script

<script src="https://unpkg.com/browse/@marketto/diacritic-remover/dist/diacritic-remover.bundle.min.js"></script>
<script>
    Promise.all([
        fetch("https://unpkg.com/browse/@marketto/diacritic-remover/dictionaries/i18n/it.json")
        fetch("https://unpkg.com/browse/@marketto/diacritic-remover/dictionaries/i18n/global.json")
    ])
        .then(responses => responses.map(response => response.json()))
        .then(dictionaries => new DiacriticRemover(...dictionaries));
</script>

DEMO

USAGE

Replace string diacritics

diacriticRemover.replace('àçcèß'); //access

Char diacritic remover

diacriticRemover.à; //a

Char diacritic map

diacriticRemover.matcher.i; //íîïi̇řìįīi

Char diacritic matcher (RegExp)

diacriticRemover.validator.a.test('à'); //true
diacriticRemover.validator.a.test('A'); //true
diacriticRemover.validator.e.test('à'); //false

Char diacritic case insensitive matcher(RegExp)

diacriticRemover.insensitiveValidator.a.test('à'); //true
diacriticRemover.insensitiveValidator.a.test('À'); //true
diacriticRemover.insensitiveValidator.A.test('à'); //true
diacriticRemover.insensitiveValidator.A.test('À'); //true

Get diacritics by RegExp

diacriticRemover.matcherBy(/^[au]$/); //áäâàåÄąāãăúûüùůŭųūư

LICENSE

MIT License

DIACRITIC ASSETS LICENSE AND AUTHOR

Latin Diacritic Dictionary

Latin diacritic json file use material from Wikitionary article Latin script, which is released under the Creative Commons Attribution-Share-Alike License 3.0 (CC-BY-SA 3.0)

I18N Diacritic Dictionaries

These diacritic i18n json files use material from Wikipedia article Diacritic, which is released under the Creative Commons Attribution-Share-Alike License 3.0 (CC-BY-SA 3.0)

AUTHOR

Marco Ricupero

changelog

diacritic-remover changelog

1.0.8

  • Fixed Script src in README

    1.0.7

  • Implemented Unicode Marker Regexp compatibility (List of markers for JSCRE engine)
  • Tests are spread into multiple files
  • Implemented Tests and simulator for environments unsupporting Unicode Marker RegExp
  • Updated dependencies

    1.0.6

  • Improved dictionaries
  • Optimized packages (js, mjs, iife-bundle)
  • Demo
    • Angular (ts)
    • Express (cjs)
    • jQuery (bundle)
    • React (mjs)
    • Svelte (mjs)
    • Vue (mjs)

      1.0.5

  • Fixed package.json and rollup config
  • dist contains es module, cjs, iife bundle and iife bundle minified
  • Improved test coverage
  • Fixed case utils
  • Improved Validator and InsensitiveValidator complexity

    1.0.4

  • tsLint code review
  • Fixed rollup config for iife

    1.0.3

  • added input char in matcher, insensitiveMatcher and matcherBy outputs
  • Changelog moved into CHANGELOG.md

    1.0.2

  • matcherBy Refactoring

    1.0.1

  • matcherBy fix
  • type d.ts
  • source maps

    1.0.0

  • First version