string - bhsd-harry/wikiparser-node GitHub Wiki
This is an internal document. For visitors, you can now go back to the home page.
// trimLc (Node.js)
var {trimLc} = require('../util/string');
assert.strictEqual(trimLc(' A '), 'a');
// restore (Node.js)
var {restore} = require('../util/string');
var stack = ['x', 'y', 'z', '\x000n\x7F\x001n\x7F\x002n\x7F'];
assert.strictEqual(
restore('\x000\x7F\x001\x7F\x002\x7F', stack),
'xyz',
);
assert.strictEqual(restore(stack[3], stack, 2), 'xyz');
assert.strictEqual(restore('\x003g\x7F', stack, 1), 'xyz');
// tidy (Node.js)
var {tidy} = require('../util/string');
assert.strictEqual(
tidy('\x00\x7Fa\r\nb'),
'a\nb',
);
// removeComment (Node.js)
var {removeComment} = require('../util/string');
assert.strictEqual(
removeComment('\x000c\x7F\x001n\x7F\x002t\x7F'),
'\x002t\x7F',
);
// text (Node.js)
var {text} = require('../util/string');
var child = {
text() {
return 'test';
},
};
assert.strictEqual(text(['x', child, 'y'], ','), 'x,test,y');
// decodeHtmlBasic (Node.js)
var {decodeHtmlBasic} = require('../util/string');
assert.strictEqual(decodeHtmlBasic('{'), '{');
assert.strictEqual(decodeHtmlBasic('{'), '{');
assert.strictEqual(decodeHtmlBasic('<'), '<');
assert.strictEqual(decodeHtmlBasic('>'), '>');
assert.strictEqual(decodeHtmlBasic('{'), '{');
assert.strictEqual(decodeHtmlBasic(']'), ']');
assert.strictEqual(decodeHtmlBasic(' '), ' ');
assert.strictEqual(decodeHtmlBasic('&'), '&');
assert.strictEqual(decodeHtmlBasic('"'), '"');
// decodeHtml (Node.js)
var {decodeHtml} = require('../util/string');
assert.strictEqual(decodeHtml('{'), '{');
assert.strictEqual(decodeHtml('{'), '{');
assert.strictEqual(decodeHtml('<'), '<');
assert.strictEqual(decodeHtml('>'), '>');
assert.strictEqual(decodeHtml('{'), '{');
assert.strictEqual(decodeHtml(']'), ']');
assert.strictEqual(decodeHtml(' '), ' ');
assert.strictEqual(decodeHtml('&'), '&');
assert.strictEqual(decodeHtml('"'), '"');
assert.strictEqual(decodeHtml('''), "'");
// decodeNumber (Node.js)
var {decodeNumber} = require('../util/string');
assert.strictEqual(decodeNumber('{'), '{');
assert.strictEqual(decodeNumber('{'), '{');
// escape (main)
var {escape} = require('../util/string');
assert.strictEqual(escape('&<>'), '&<>');
// print (main)
var {print} = require('../util/string');
var child = {
print() {
return 'test';
},
};
assert.strictEqual(
print([child, child], {pre: 'a', post: 'b', sep: ','}),
'atest,testb',
);
// escapeRegExp (main)
var {escapeRegExp} = require('../util/string');
assert.deepStrictEqual(
new RegExp(escapeRegExp(String.raw`\{}()|.?*+^$[]`), 'u'),
/\\\{\}\(\)\|\.\?\*\+\^\$\[\]/u,
);
// noWrap (main)
var {noWrap} = require('../util/string');
assert.strictEqual(noWrap('a\nb'), String.raw`a\nb`);
// encode (main)
var {encode} = require('../util/string');
assert.strictEqual(encode('x<x>x[x]x#x|x='), 'x%3Cx%3Ex%5Bx%5Dx%23x%7Cx%3D');
// normalizeSpace (main)
var {normalizeSpace} = require('../util/string'),
{Token} = require('../src/index');
var token = new Token('a\n\nb');
normalizeSpace(token);
assert.equal(token, 'a b');
// sanitize (main)
var {sanitize} = require('../util/string');
assert.strictEqual(sanitize('&<>&&'), '&<>&amp&');
// sanitizeAttr (main)
var {sanitizeAttr} = require('../util/string');
assert.strictEqual(sanitizeAttr('<>" '), '<>" ');
assert.strictEqual(sanitizeAttr('<>" ', true), '<>"__');
// sanitizeId (main)
var {sanitizeId} = require('../util/string');
assert.strictEqual(sanitizeId('&"'), '&"');
// sanitizeAlt (main)
var {sanitizeAlt} = require('../util/string');
assert.strictEqual(sanitizeAlt(`<b> ' " </b>`), "' "");
// newline (main)
var {newline} = require('../util/string');
assert.strictEqual(newline('a\nb'), 'a b');
// removeCommentLine (main)
var {removeCommentLine} = require('../util/string');
assert.strictEqual(
removeCommentLine(`a\n${'\0'}0c\x7F `),
'a\n ',
);
assert.strictEqual(
removeCommentLine(`a\n${'\0'}0c\x7F `, true),
'a',
);
assert.strictEqual(
removeCommentLine(` ${'\0'}0c\x7F \n ${'\0'}1c\x7F `),
' \n ',
);
assert.strictEqual(
removeCommentLine(` ${'\0'}0c\x7F \n ${'\0'}1c\x7F `, true),
'',
);
assert.strictEqual(
removeCommentLine(`a\n \n${'\0'}0c\x7F ${'\0'}1c\x7F\nb`, true),
'a\n \nb',
);