--- /dev/null
+<script src="../vendor/jslitmus.js"></script>
+<script>
+ var charactersToReplace = /[a-z][0-9]?/gi;
+ formatFunctions = {
+ L:function(){},
+ l:function(){}
+ };
+
+ function replaceFunction1(input) {
+ var character = input.charAt(0),
+ parameter = input.length > 1 ? input.charAt(1) | 0 : 0;
+ return formatFunctions[character] ? formatFunctions[character](parameter & 1, parameter >> 1) : input;
+ };
+
+ function replaceFunction2(input) {
+ var character = input.charAt(0),
+ parameter = input.charAt(1) || 0;
+ return formatFunctions[character] ? formatFunctions[character](parameter & 1, parameter >> 1) : input;
+ };
+
+ function replaceFunction3(input) {
+ var character = input.split('');
+ return formatFunctions[character[0]] ? formatFunctions[character[0]](character[1] | 0 & 1, character[1] | 0 >> 1) : input;
+ };
+
+
+
+ JSLitmus.test('replaceFunction1', function() {
+ return "0L L+ l l- 0D D+ W W+ w w- y 0y h h+ H H+ m 0m s 0s".replace(charactersToReplace, replaceFunction1);
+ });
+
+ JSLitmus.test('replaceFunction2', function() {
+ return "0L L+ l l- 0D D+ W W+ w w- y 0y h h+ H H+ m 0m s 0s".replace(charactersToReplace, replaceFunction2);
+ });
+
+ JSLitmus.test('replaceFunction3', function() {
+ return "0L L+ l l- 0D D+ W W+ w w- y 0y h h+ H H+ m 0m s 0s".replace(charactersToReplace, replaceFunction3);
+ });
+
+</script>
\ No newline at end of file