JavaScript中正则表达式详解

正则表达式的介绍

    * 正则表达式也叫规则表达式[Regular Expression],是按照一定的规则组成的一个表达式,主要作用是用来匹配字符串的
    * 正则表达式可以在大多数编程语言中使用
    * 正则表达式的组成:由元字符或者限定符组成的一个式子
    * . 表示的是:除换行符(\n)之外的任意单个字符====>"word23"
    * [] 表示的是:范围,[0-9]表示的是09之间任意的一个数====>"234";[100-199]这种写法是错误的,应该改为[1][0-9][0-9]
    * [a-z]表示的是:所有的小写字母中的任意一个;[A-Z]表示的是:所有的大写字母中的任意一个
    * [a-zA-Z]表示的是:所有字母中的任意一个;[0-9a-zA-Z]表示的是:所有数字或者字母中的任意一个
    * []的另一层含义:把正则表达式中元字符的意义去掉====>[.]就表示一个点
    * | 或者 [0-9]|[a-z]表示的是:要么是一个数字,要么是一个小写的字母
    * () 分组,提升优先级 [0-9]|([a-z])|[A-Z]
    * ([0-9])([a-z])([A-Z])三组,从最左边开始计算
    * (()(()))只查左边的半个括号就可以了,共有四组
    * * 表示的是:*前面的表达式出现0次或者多次
    * [a-z][0-9]*表示的是:小写字母中的任意一个后面要么没有数字,要么有多个数字====>"word33334"
    * 匹配中文的正则表达式  [\u4e00-\u9fa5]
    * + 表示的是:+前面的表达式出现了1次到多次
    * [a-z][9]+表示的是:一个小写字母后面最少有一个9,或者多个9====>"word9999word"
    * ? 表示的是:?前面的表达式出现0次到1[4][a-z]?====>"1314word"
    * {
   } 能够更加明确前面的表达式出现的次数
    * {
   0,} 表示的是:前面的表达式出现了0次到多次,和*一样
    * {
   1,} 表示的是:前面的表达式出现了1次到多次,和+一样
    * {
   0,1} 表示的是:前面的表达式出现了0次到1次,和?一样
    * {
   5,7} 表示对是:前面的表达式出现了5次到7* {
   4} 表示的是:前面的表达式出现了4* ^ 表示的是以什么开始,或者是取非(取反)^[0-9]====>"23word"以数字开头
    * ^[a-z]以小写字母开始;[^a-z]取反,非小写字母;[^0-9]非数字
    * [^0-9a-zA-Z_] 表示的是:特殊字符,_不算特殊字符
    * $ 表示的是:以什么结束 [0-9][a-z]$ 不严格的模式,只要存在就满足====>"232word";
    * ^[0-9][a-z]$ 相当于严格模式,每个字符只能出现一次====>"2b"
    * ^[0-9][a-z] 只限定了前面====>"2f234word"
    * \d 表示的是:数字中的任意一个,相当于[0-9]
    * \D 表示的是:非数字中的任意一个
    * \s 表示的是:空白符中的任意一个(空格/tab键)
    * \S 表示的是:非空白符中的任意一个
    * \w 表示的是:非特殊符号中的任意一个
    * \W 表示对是:特殊符号中的任意一个

正则表达式练习

    * 根据字符串写正则表达式进行匹配
    * 经验:1.找规律;2.不要追求完美
    *
    * 身份证的正则表达式:15位或者18* ([1-9][0-9]{
   14})|([1-9][0-9]{
   16}[0-9xX])
    * [1-9][0-9]{
   14}([0-9]{
   2}[0-9xX])?
    *
    * 座机号码的正则表达式010-19957435 0431-46436581
    * [0-9]{
   3,4}[-][0-9]{
   8}
    * \d{
   3,4}[-]\d{
   8}
    *
    * QQ号码的正则表达式
    * [1-9][
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值