跳到主要内容

RegExp 正则表达式

用来定义一个字符串的规则,计算机可以根据正则表达式来判断一个字符串是否符合规则,也可以将符合内容的字符串从一段内容中提取出来。严格区分大小写

语法new RegExp('正则表达式','匹配模式') /正则表达式/匹配模式

匹配模式i 忽略大小写, g 全局匹配

test() 用来检查一个字符串是否符合正则表达式

量词

量词作用量词作用量词作用
{m}正好出现m次\|表示或.任意字符,除了\n
{n,m}出现n到m次[]里面的内容都表示或.表示.
{m,} 至少出现m次[a-z]任意小写字母\w任意单词字符,相当于[a-zA-Z0-9_]
+至少一次,等价于{1,}[A-Z]任意大写字母\W除了单词字符,相当于[^a-zA-Z0-9_]
?0-1次,等价于{0,1}[a-zA-Z]任意字母\s空格
*0-多次,等价于{0,}[0-9]任意数字\S除了空格
[^]表示除了\d任意数字,相当于[0-9]
^表示字符串的开头\D除了数字,相当于[^0-9]
$表示字符串的结尾

字符串中和正则相关的方法

  1. str.search() 根据正则表达式搜索字符串中是否含有指定的子串,返回字符串第一次出现位置的索引,没找到则返回-1
  2. str.split() 根据正则表达式将一个字符串拆分为一个数组
  3. str.replace() 使用一个新的内容,替换字符串中指定内容,默认只会替换第一个符合条件的内容,如果希望替换所有的符合条件的内容,可以使用是匹配模式g
  4. str.match() 将字符串中符合正则表达式的内容提取出来,将符合条件的内容保存到一个数组中返回