소스 검색

Улучшение парсинга СИ

Book Pauk 6 년 전
부모
커밋
2e477e6c99
1개의 변경된 파일3개의 추가작업 그리고 1개의 파일을 삭제
  1. 3 1
      server/core/BookConverter/index.js

+ 3 - 1
server/core/BookConverter/index.js

@@ -10,6 +10,7 @@ const FileDetector = require('../FileDetector');
 
 
 const repSpaces = (text) => text.replace(/ |[\t\n\r]/g, ' ');
 const repSpaces = (text) => text.replace(/ |[\t\n\r]/g, ' ');
 const repSpaces2 = (text) => text.replace(/[\n\r]/g, '');
 const repSpaces2 = (text) => text.replace(/[\n\r]/g, '');
+const repSpaces3 = (text) => text.replace(/ /g, ' ');
 
 
 class BookConverter {
 class BookConverter {
     constructor() {
     constructor() {
@@ -384,6 +385,7 @@ class BookConverter {
                         if (inSubtitle) {
                         if (inSubtitle) {
                             closeTag('subtitle');
                             closeTag('subtitle');
                             inSubtitle = false;
                             inSubtitle = false;
+                            isFirstPara = false;
                         }
                         }
 
 
                         if (inJustify) {
                         if (inJustify) {
@@ -442,7 +444,7 @@ class BookConverter {
                 growParagraph(`${tOpen}${text}${tClose}`);
                 growParagraph(`${tOpen}${text}${tClose}`);
         };
         };
 
 
-        sax.parseSync(repSpaces(this.decode(data).toString()), {
+        sax.parseSync(repSpaces3(this.decode(data).toString()), {
             onStartNode, onEndNode, onTextNode, onComment,
             onStartNode, onEndNode, onTextNode, onComment,
             innerCut: new Set(['head', 'script', 'style'])
             innerCut: new Set(['head', 'script', 'style'])
         });
         });