unicode-match-property-value-ecmascript Build status unicode-match-property-value-ecmascript on npm

unicode-match-property-value-ecmascript matches a given Unicode property value or property value alias to its canonical property value without applying loose matching, per the algorithm used for RegExp Unicode property escapes in ECMAScript. Consider it a strict alternative to loose matching.


To use unicode-match-property-value-ecmascript programmatically, install it as a dependency via npm:

$ npm install unicode-match-property-value-ecmascript

Then, require it:

const matchPropertyValue = require('unicode-match-property-value-ecmascript');


This module exports a single function named matchPropertyValue.

matchPropertyValue(property, value)

This function takes a string property that is a canonical/unaliased Unicode property name, and a string value. It attemps to match value to a canonical Unicode property value for the given property. If there’s a match, it returns the canonical property value. Otherwise, it throws an exception.

// Find the canonical property value:
matchPropertyValue('Script_Extensions', 'Aghb')
// → 'Caucasian_Albanian'

matchPropertyValue('Script_Extensions', 'Caucasian_Albanian')
// → 'Caucasian_Albanian'

matchPropertyValue('script_extensions', 'Caucasian_Albanian') // Note: incorrect casing.
// → throws

matchPropertyValue('Script_Extensions', 'caucasian_albanian') // Note: incorrect casing.
// → throws

For maintainers

How to publish a new release

  1. On the main branch, bump the version number in package.json:

     npm version patch -m 'Release v%s'

    Instead of patch, use minor or major as needed.

    Note that this produces a Git commit + tag.

  2. Push the release commit and tag:

     git push && git push --tags

    Our CI then automatically publishes the new release to npm.


Mathias Bynens


unicode-match-property-value-ecmascript is available under the MIT license.