사용자 도구

사이트 도구


javascript:maro_pattern:remove_comment

RemoveComment

  function removeComment(source) {
      var src = source.split('\n');
      var out = [];
      var p1 = /\/\*/; // block comment start
      var p2 = /\/\*(.)*\*\//g; // block comment
      var p3 = /\/\/(.)*$/; // inline comment
      var isBlock = false;
      var str;
      for (var i = 0; i < src.length; i++) {
        str = src[i];
        if (isBlock) {
          if (str.indexOf('*/') >= 0) {
            str = str.substring(str.indexOf('*/') + 2);
            isBlock = false;
          } else {
            str = '';
          }
        }
        if (!isBlock) {
          str = str.replace(p2, '');
          str = str.replace(p3, '');
          if (p1.test(str)) {
            isBlock = true;
            str = str.substring(0, str.indexOf('/*'));
          }
          console.log(i, str);
        }
        out.push(str);
      }
      return out.join('\n');
    }
 
javascript/maro_pattern/remove_comment.txt · 마지막으로 수정됨: 2025/04/15 10:05 저자 127.0.0.1