From 2c4ae43e688a9873e86211ea0e7aeb9ba770dd77 Mon Sep 17 00:00:00 2001 From: Minteck Date: Tue, 18 Oct 2022 08:59:09 +0200 Subject: Update --- .../examples/extract-html-head-contents.js | 42 ++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 alarm/node_modules/string-strip-html/examples/extract-html-head-contents.js (limited to 'alarm/node_modules/string-strip-html/examples/extract-html-head-contents.js') diff --git a/alarm/node_modules/string-strip-html/examples/extract-html-head-contents.js b/alarm/node_modules/string-strip-html/examples/extract-html-head-contents.js new file mode 100644 index 0000000..5c09d52 --- /dev/null +++ b/alarm/node_modules/string-strip-html/examples/extract-html-head-contents.js @@ -0,0 +1,42 @@ +// Extract HTML `` contents + +import { strict as assert } from "assert"; +import { stripHtml } from "../dist/string-strip-html.esm.js"; + +const someHtml = ` + + + + the title + + + the content + +`; + +// The task asks not to include and . +// First, extract head tag-to-head tag, including contents +const headWithHeadTags = stripHtml(someHtml, { + onlyStripTags: ["head"], + stripTogetherWithTheirContents: ["head"], +}) + .filteredTagLocations.reduce( + (acc, [from, to]) => `${acc}${someHtml.slice(from, to)}`, + "" + ) + .trim(); + +assert.equal( + headWithHeadTags, + ` + + the title + ` +); + +const headContents = headWithHeadTags.replace(/<\/?head>/g, "").trim(); +assert.equal( + headContents, + ` + the title` +); -- cgit