正则求翻译一下

可爱的开心果
  • 1
新手上路,请多包涵

const attribute = /^\s(1+)(?:\s(=)\s(?:"(2)"+|'(3*)'+|(4+)))?/
const ncname = [a-zA-Z_][\\w\\-\\.]*
const qname = ((?:${ncname}\\:)?${ncname})
const startTagOpen = new RegExp(^<${qname})
const startTagClose = /^\s*(/?)>/
const endTag = new RegExp(^<\\/${qname}[^>]*>)
const comment = /^<!--/
const invalidAttributeRE = /[\s"'<>/=]/


  1. \s"'<>/=
  2. "
  3. '
  4. \s"'=<>`
回复
阅读 485
2 个回答
OceanZH
  • 266

正则可视化工具
https://regexper.com/

给几个例子
  • attribute

    • 空格开头,至少一个1;
    • 可以匹配的字符串
      var r = /^\s(1+)(?:\s(=)\s(?:"(2)"+|'(3*)'+|(4+)))?/

      • r.test(' 1')
      • r.test(\` 1 = "2"`)
      • r.test(` 1 = ''`)
      • r.test(` 1 = 444`)
    • image.png
  • ncname

    • 字面意思,两种合集的组合,第二个合集可以省略

      • image.png
  • comment

    • <!-- 开头
    • image.png
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏