* Remove pinning of eslint-plugin-markdown An issue affecting Node.js source has been fixed in eslint-plugin-markdown so we don't need to pin it to beta-4 anymore. Refs: https://github.com/eslint/eslint-plugin-markdown/issues/69 * Update eslint-plugin-markdown up to 1.0.0-beta.7 * Fix docs for eslint-plugin-markdown@1.0.0-beta.7 PR-URL: https://github.com/nodejs/node/pull/14047 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Yuta Hiroto <hello@about-hiroppy.com> Reviewed-By: Refael Ackermann <refack@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
33 lines
1,013 B
JavaScript
33 lines
1,013 B
JavaScript
/**
|
|
* @author Titus Wormer
|
|
* @copyright 2015 Titus Wormer
|
|
* @license MIT
|
|
* @module remark:parse:util:html
|
|
* @fileoverview HTML regexes.
|
|
*/
|
|
|
|
'use strict';
|
|
|
|
var attributeName = '[a-zA-Z_:][a-zA-Z0-9:._-]*';
|
|
var unquoted = '[^"\'=<>`\\u0000-\\u0020]+';
|
|
var singleQuoted = '\'[^\']*\'';
|
|
var doubleQuoted = '"[^"]*"';
|
|
var attributeValue = '(?:' + unquoted + '|' + singleQuoted + '|' + doubleQuoted + ')';
|
|
var attribute = '(?:\\s+' + attributeName + '(?:\\s*=\\s*' + attributeValue + ')?)';
|
|
var openTag = '<[A-Za-z][A-Za-z0-9\\-]*' + attribute + '*\\s*\\/?>';
|
|
var closeTag = '<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>';
|
|
var comment = '<!---->|<!--(?:-?[^>-])(?:-?[^-])*-->';
|
|
var processing = '<[?].*?[?]>';
|
|
var declaration = '<![A-Za-z]+\\s+[^>]*>';
|
|
var cdata = '<!\\[CDATA\\[[\\s\\S]*?\\]\\]>';
|
|
|
|
exports.openCloseTag = new RegExp('^(?:' + openTag + '|' + closeTag + ')');
|
|
|
|
exports.tag = new RegExp('^(?:' +
|
|
openTag + '|' +
|
|
closeTag + '|' +
|
|
comment + '|' +
|
|
processing + '|' +
|
|
declaration + '|' +
|
|
cdata +
|
|
')');
|