Skip to main content

@babel/plugin-transform-unicode-property-regex

info

This plugin is included in @babel/preset-env, in ES2018

This plugin transforms regular expression literals to support the \p{...} escapes. It does not patch the new RegExp constructor, since its arguments cannot be pre-transformed statically: to handle runtime behavior of functions/classes, you will need to use a polyfill instead.

Here’s an online demo.

Installation

npm install --save-dev @babel/plugin-transform-unicode-property-regex

Usage

babel.config.json
{
"plugins": ["@babel/plugin-transform-unicode-property-regex"]
}

Via CLI

Shell
babel --plugins @babel/@babel/plugin-transform-unicode-property-regex script.js

Via Node.js API

JavaScript
require("@babel/core").transformSync(code, {
plugins: ["@babel/plugin-transform-unicode-property-regex"],
});

To transpile to ES6/ES2015:

JavaScript
require("@babel/core").transformSync(code, {
plugins: [
[
"@babel/plugin-transform-unicode-property-regex",
{ useUnicodeFlag: false },
],
],
});

Options

  • useUnicodeFlag (defaults to true)

When disabled with false, the transform converts Unicode regexes to non-Unicode regexes for wider support, removing the u flag. See https://github.com/mathiasbynens/regexpu-core#useunicodeflag-default-false for more information.

tip

You can read more about configuring plugin options here

Author

twitter/mathias
Mathias Bynens