unicoderegexp

Regular expressions for various Unicode character classes extracted from XRegExp

Usage no npm install needed!

<script type="module">
  import unicoderegexp from 'https://cdn.skypack.dev/unicoderegexp';
</script>

README

unicoderegexp

Various regular expressions for unicode character classes (letter, punctuation, number, etc.) and helper functions for composing them.

Used by the purify library.

The module exports a bunch of useful RegExps each with a single character class in them:

  • letter
  • mark
  • number
  • punctuation
  • symbol
  • separator
  • other
  • visible
  • printable
unicodeRegExp.visible.test("a"); // true
unicodeRegExp.visible.test(" "); // false
unicodeRegExp.visible.test("\u00a0"); // false -- a non-breaking space is not visible

To validate an entire string you need to build a new RegExp:

var visibleStringRegExp = new RegExp('^' + unicodeRegExp.visible.source + '*

);
visibleStringRegExp.test("foobar"); // true
visibleStringRegExp.test("foo bar"); // false because of the space

unicodeRegExp.removeCharacterFromCharacterClassRegExp(/[æøå]/, 'æ'); // /[\u00f8\u00e5]/
unicodeRegExp.spliceCharacterClassRegExps(/[a-b]/, /[c-d]/); // /[a-bc-d]/

The info about which characters belong to which classes was taken from the XRegExp library and its Unicode plugin.