shortstr v0.1.0
shortstr
Imagine you have a string "00011011" containing only the chars "0" and "1". You want to reduce the length of the string without losing information. You could map this string to "abcd" which is 50% smaller than before by using this transformation table.
"00" => "a"
"01" => "b"
"10" => "c"
"11" => "d"And you can also apply this transformation twice and map "abcd" back to "00011011". So whenever you have a limited set of input characters you can reduce the length of the string by using this shortstr module.
Real world example
Your String contains chars of "0123456789,.-" and you want to transform to "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-+"
"-122343.45,94323443,6343.08,934762.3,-8275234,221302234322,-53490269003" becomes
"7Nx83dblqizc4dGdQI0GVgD9XEcan93Fy438Ogz8an3Bwo903" which is 30% shorter!
Installation
npm install shortstrUsage
var shortstr = require("shortstr");Create ashortener that maps from "01" to "abcd" with a maximum input length of 8 chars.
var shortener = shortstr.create("01", "abcd", 8); // create shortener
shortener.shorten("00011011"); // shorten the original String
// => "acacbd" or similar
shortener.expand("acacbd"); // expand the shortened String to the original String
// => "00011011"API
create(from, to, fromMaxLength)
from:Stringof chars that are allowed to be shortened (optimal length is something like 2, 4, 8, 16, 32, 64, ...)to:Stringof chars used to shorten (to.length > from.length, optimal length is something like 2, 4, 8, 16, 32, 64, ...)fromMaxLength: Maximum lengthNumberof String that can be shortened (optimal fromMaxLength is something like 2, 4, 8, 16, 32, 64, ...)
Contribution
If you want to create a Pull-Request please make sure that make test runs without failures.
Code Style
make jslintUnit Tests
make mochaCircular depdendencies
make circular11 years ago


