npm stats
  • Search
  • About
  • Repo
  • Sponsor
  • more
    • Search
    • About
    • Repo
    • Sponsor

Made by Antonio Ramirez

noncharacters

1.1.0

@jonschlinkert

npmHomeRepoSnykSocket
Downloads:2188174
$ npm install noncharacters
DailyWeeklyMonthlyYearly

noncharacters NPM version

34 non-character code points (labeled ), that are set aside and guaranteed to never be used for a character. Perfect to use for placeholders or temporary replacements during string transformations.

See the wikipedia article on non-characters. Also, I used regenerate from mathiasbynens to generate the range of characters.

Install with npm

npm i noncharacters --save

Usage

var noncharacters = require('noncharacters');
//=> ['\uFFFF', '\uFFFE', ...]

Example

Let's say you need to transform a string but you need to temporarily replace some characters that might cause issues.

Create your own placeholders:

// arbitrary characters we want to replace, 
// mapped to placeholder non-characters
var placeholders = {
  '{': noncharacters[0],
  '}': noncharacters[1]
};

// the string with characters to replace
var str = 'This is a template: {name}';

// actually replace the characters
Object.keys(placeholders).forEach(function(ch) {
  str = str.replace(ch, placeholders[ch]);
});
//=> This is a template: \uFFFFname\uFFFE

Now you can do whatever you want to str. Then, to change back:

Object.keys(placeholders).forEach(function(ch) {
  str = str.replace(placeholders[ch], ch);
});
//=> This is a template: {name}

Run tests

Install dev dependencies:

npm i -d && npm test

Contributing

Pull requests and stars are always welcome. For bugs and feature requests, please create an issue

Author

Jon Schlinkert

  • github/jonschlinkert
  • twitter/jonschlinkert

License

Copyright (c) 2015 Jon Schlinkert
Released under the MIT license


This file was generated by verb-cli on February 27, 2015.