Saber2pr's Blog

基础语法

匹配数字

  1. 匹配一个数字,0 ~ 9
/[0-9]/

/\d/
  1. 匹配多个数字
/[0-9]+/

/\d+/
  1. 匹配指定个数的数字,例如 1~3 个
/[0-9]{1,3}/

/\d{1,3}/

匹配字符

  1. \s

匹配空白字符,包括空格、换行、tab 缩进等

  1. \S

匹配非空白字符,与\s 相反

  1. [\s\S]

匹配所有字符

  1. \w

匹配单词字符,等于 [A-Za-z0-9_]

  1. \W

匹配非单词字符,和\W 相反

匹配字符串

  1. 匹配所有内容
/[\s\S]*/
/[\w\W]*/

匹配模式

  1. +

前导字符必须在目标字符串中连续出现 1 次或 n 次

/\d+/
  1. *

前导字符必须在目标字符串中出现 0 次或连续 n 次

/\d*/
  1. ?

前导对象必须在目标字符串中连续出现 0 次或 1 次

/\d?/
  1. ^

定位字符串第一个 1 字符

/^\d/
  1. $
/\d$/

定位字符串最后一个 1 字符

贪婪匹配

  1. 贪婪模式
/\([\w\W]*\)/.exec("(add (mul 1 2) 3)")

结果:(add (mul 1 2) 3)

  1. 非贪婪模式

\)前面加?号表示,遇到第一个 ) 就结束

/\([\w\W]*?\)/.exec("(add (mul 1 2) 3)")

结果:(add (mul 1 2)