What is unicode-match-property-ecmascript?
The unicode-match-property-ecmascript npm package is used to match Unicode property escapes in ECMAScript regular expressions. It provides functionality to check if a given property and value are valid according to the ECMAScript specification and to canonicalize property and value aliases.
What are unicode-match-property-ecmascript's main functionalities?
Matching Unicode property escapes
This feature allows you to match Unicode property escapes by providing the alias of the property. It returns the canonical property name.
const matchProperty = require('unicode-match-property-ecmascript');
const property = matchProperty('sc');
// 'sc' is the alias for the 'Script' property
console.log(property); // 'Script'
Canonicalizing property names
This feature is used to canonicalize property names by providing an alias and getting back the canonical form of the property name.
const matchProperty = require('unicode-match-property-ecmascript');
const canonicalPropertyName = matchProperty('scx');
// 'scx' is the alias for the 'Script_Extensions' property
console.log(canonicalPropertyName); // 'Script_Extensions'
Other packages similar to unicode-match-property-ecmascript
regexpu-core
The regexpu-core package is a RegExp utility for transforming Unicode-aware regular expressions to ES5. It includes the capability to rewrite Unicode property escapes to be compatible with older environments. This package provides broader functionality for dealing with Unicode in regular expressions, whereas unicode-match-property-ecmascript focuses specifically on property matching.
regenerate-unicode-properties
The regenerate-unicode-properties package generates data for Unicode properties and is used by tools like regexpu-core. It provides the raw data needed for Unicode property matching, but unlike unicode-match-property-ecmascript, it does not provide a direct API for matching properties within ECMAScript regular expressions.
unicode-match-property-ecmascript
![unicode-match-property-ecmascript on npm](https://img.shields.io/npm/v/unicode-match-property-ecmascript)
unicode-match-property-ecmascript matches a given Unicode property or property alias to its canonical property name without applying loose matching per the algorithm used for RegExp Unicode property escapes in ECMAScript. Consider it a strict alternative to loose matching.
Installation
To use unicode-match-property-ecmascript programmatically, install it as a dependency via npm:
$ npm install unicode-match-property-ecmascript
Then, require
it:
const matchProperty = require('unicode-match-property-ecmascript');
API
This module exports a single function named matchProperty
.
matchProperty(value)
This function takes a string value
and attempts to match it to a canonical Unicode property name. If there’s a match, it returns the canonical property name. Otherwise, it throws an exception.
matchProperty('sc')
matchProperty('Script')
matchProperty('script')
For maintainers
How to publish a new release
-
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.
-
Push the release commit and tag:
git push && git push --tags
Our CI then automatically publishes the new release to npm.
Author
License
unicode-match-property-ecmascript is available under the MIT license.