renmm / blogs

整理自己平时遇到的技术wiki
1 stars 0 forks source link

js正则表达式 #31

Open renmm opened 3 years ago

renmm commented 3 years ago

正则表达式,主要使用场景是针对字符串进行替换,分词摘取等

正则表达式测试:https://c.runoob.com/front-end/854 正则表达式图形理解:https://regexper.com/

一些有用的表达式:

生成ast时,需要做分词处理,比如

  1. html属性名称

通常是用字母、下划线、冒号开头(vue的绑定属性用:开头,通常我们不会这么定义)的,然后包含字母数字下划线中划线冒号和点的

const attrKey = /[a-zA-Z_:][-a-zA-Z0-9_:.]*/
  1. html的属性的 有以下几种写法: class="title" class='title' class=title
const attr = /([a-zA-Z_:][-a-zA-Z0-9_:.]*)=("([^"]*)"|'([^']*)'|([^\s"'=<>`]+)/