|
2 年 前 | |
---|---|---|
.. | ||
lib | 2 年 前 | |
CHANGELOG.md | 2 年 前 | |
LICENSE | 2 年 前 | |
README.md | 2 年 前 | |
index.js | 2 年 前 | |
package.json | 2 年 前 |
Strip line and/or block comments from a string. Blazing fast, and works with JavaScript, Sass, CSS, Less.js, and a number of other languages.
Please consider following this project's author, Jon Schlinkert, and consider starring the project to show your :heart: and support.
(TOC generated by verb using markdown-toc)
Install with npm (requires Node.js >=10):
$ npm install --save strip-comments
Takes a string and returns a new string with comments removed. Works with line comments and/or block comments. Optionally removes the first comment only or ignores protected comments.
Works with:
By default all comments are stripped.
const strip = require('strip-comments');
const str = strip('const foo = "bar";// this is a comment\n /* me too *\/');
console.log(str);
// => 'const foo = "bar";\n'
For more use-cases see the tests
Strip all code comments from the given input
, including protected comments that start with !
, unless disabled by setting options.keepProtected
to true.
Params
input
{String}: string from which to strip commentsoptions
{Object}: optional options, passed to extract-comments
line
{Boolean}: if false
strip only block comments, default true
block
{Boolean}: if false
strip only line comments, default true
keepProtected
{Boolean}: Keep ignored comments (e.g. /*!
and //!
)
preserveNewlines
{Boolean}: Preserve newlines after comments are stripped
returns
{String}: modified input
Example
const str = strip('const foo = "bar";// this is a comment\n /* me too */');
console.log(str);
// => 'const foo = "bar";'
Strip only block comments.
Params
input
{String}: string from which to strip commentsoptions
{Object}: pass opts.keepProtected: true
to keep ignored comments (e.g. /*!
)returns
{String}: modified stringExample
const strip = require('..');
const str = strip.block('const foo = "bar";// this is a comment\n /* me too */');
console.log(str);
// => 'const foo = "bar";// this is a comment'
Strip only line comments.
Params
input
{String}: string from which to strip commentsoptions
{Object}: pass opts.keepProtected: true
to keep ignored comments (e.g. //!
)returns
{String}: modified stringExample
const str = strip.line('const foo = "bar";// this is a comment\n /* me too */');
console.log(str);
// => 'const foo = "bar";\n/* me too */'
Strip the first comment from the given input
. Or, if opts.keepProtected
is true, the first non-protected comment will be stripped.
Params
input
{String}options
{Object}: pass opts.keepProtected: true
to keep comments with !
returns
{String}Example
const output = strip.first(input, { keepProtected: true });
console.log(output);
// => '//! first comment\nfoo; '
Parses a string and returns a basic CST (Concrete Syntax Tree).
Params
input
{String}: string from which to strip commentsoptions
{Object}: pass opts.keepProtected: true
to keep ignored comments (e.g. /*!
)returns
{String}: modified stringExample
const strip = require('..');
const str = strip.block('const foo = "bar";// this is a comment\n /* me too */');
console.log(str);
// => 'const foo = "bar";// this is a comment'
You might also be interested in these projects:
| Commits | Contributor |
| --- | --- |
| 82 | jonschlinkert |
| 4 | tunnckoCore |
| 2 | mk-pmb |
| 1 | kgryte |
| 1 | briandipalma |
| 1 | epicoxymoron |
| 1 | XuluWarrior |
Jon Schlinkert
Copyright © 2019, Jon Schlinkert. Released under the MIT License.
This file was generated by verb-generate-readme, v0.8.0, on November 13, 2019.