Skip to content Skip to sidebar Skip to footer

Regex To Remove Comments From Sql Query String Using Javascript

I managed to find the regex for handling /* */ cases but it doesn't work well for -- cases. How can I change my regex to fix this? var s = `SELECT * FROM TABLE_A /* first line of

Solution 1:

var s = `SELECT * FROM TABLE_A
/* first line of comment
   second line of comment */
   -- remove this comment too
   SELECT * FROM TABLE_B`;

var stringWithoutComments = s.replace(/(\/\*[^*]*\*\/)|(\/\/[^*]*)|(--[^.].*)/gm, '');
/*
Expected:

SELECT * FROM TABLE_A
SELECT * FROM TABLE_B
*/
console.log(stringWithoutComments);

// without linebreak
stringWithoutComments = stringWithoutComments.replace(/^\s*\n/gm, "")
console.log(stringWithoutComments);


// without whitespace
stringWithoutComments = stringWithoutComments.replace(/^\s+/gm, "")
console.log(stringWithoutComments);

Post a Comment for "Regex To Remove Comments From Sql Query String Using Javascript"