正则表达式

正则表达式

检查一段字符串是否符合自定义的一个规则

特殊符

^

  • 匹配输入开始
  • /^a/—-字符串开始位置必须是a

$

  • 匹配输入结束
  • /a$/—-字符串结尾必须是a

\

  • 转义字符

+

  • 执行一个规则多次
  • /a+/—-匹配candy中的a和caaaaaay中的所有a

x|y

  • 匹配x或者y

[]

  • 匹配括号内的任意字符
  • //[a]//—-匹配a
  • //[a-z]//—-匹配a-z任意一个

?

  • 匹配前面一个表达式 0 次或者 1 次。等价于 {0,1}。
  • 例如,/e?le?/ 匹配 “angel” 中的 ‘el’、”angle” 中的 ‘le’ 以及 “oslo’ 中的 ‘l’。

{}

  • 匹配规则出现的次数(括号里的数组)
  • /a{2}/—不会匹配apple 会匹配 aapple 和 aaaaapple

更多参考

使用正则表达式

exec

  • 一个在字符串中执行查找匹配的RegExp方法,它返回一个数组(未匹配到则返回 null)。

    test

  • 一个在字符串中测试是否匹配的RegExp方法,它返回 true 或 false。

    match

  • 一个在字符串中执行查找匹配的String方法,它返回一个数组,在未匹配到时会返回 null。

    matchAll

  • 一个在字符串中执行查找所有匹配的String方法,它返回一个迭代器(iterator)。

    search

  • 一个在字符串中测试匹配的String方法,它返回匹配到的位置索引,或者在失败时返回- 1。

    replace

  • 一个在字符串中执行查找匹配的String方法,并且使用替换字符串替换掉匹配到的子字符串。

    split

  • 一个使用正则表达式或者一个固定字符串分隔一个字符串,并将分隔后的子字符串存储到数组中的 String 方法。

常见规则

/^[1][0-9]{10}/

  • 1开头的11位手机号码

/^\s*|\s*$/g

  • 字符串是否为空

/^\w+@[a-zA-Z0-9]{2,10}(?:.[a-z]{2,4}){1,3}$/

  • 邮箱

/^\d+.\d+$/

  • 是否有小数

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!