From 28f243280e5691c2565f8219b93b83734fe7e888 Mon Sep 17 00:00:00 2001 From: hongjiawei Date: Mon, 6 May 2024 18:44:40 +0800 Subject: [PATCH] fix: HTML Parser should handle multiple attributes without spaces --- parser.js | 2 +- test/insane.js | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/parser.js b/parser.js index e6e0b1d..1d7af3a 100644 --- a/parser.js +++ b/parser.js @@ -4,7 +4,7 @@ var he = require('he'); var lowercase = require('./lowercase'); var attributes = require('./attributes'); var elements = require('./elements'); -var rstart = /^<\s*([\w:-]+)((?:\s+[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*>/; +var rstart = /^<\s*([\w:-]+)((?:\s*[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*>/; var rend = /^<\s*\/\s*([\w:-]+)[^>]*>/; var rattrs = /([\w:-]+)(?:\s*=\s*(?:(?:"((?:[^"])*)")|(?:'((?:[^'])*)')|([^>\s]+)))?/g; var rtag = /^→→→→→→more←←←←←←' + ), + '→→→→→→more←←←←←←' + ); + t.end(); +});