Web APIs 第七天(正则表达式)

428 阅读2分钟

正则表达式

介绍

  • 正则表达式是什么? 是用于匹配字符串中字符组合的模式
  • 正则表达式有什么作用? 表单验证(匹配)
    过滤敏感词(替换)
    字符串中提取我们想要的部分(提取)

语法

正则表达式语法

let 变量名 = /表达式/
let reg = /abc/

判断是否有符合规则的字符串:

  • text方法:用来查看正则表达式与指定的字符串是否匹配
变量名.test(被检测的字符串)
  • exec方法:在一个指定字符串中执行一个搜索匹配
变量名.exec(被检测的字符串)

如果匹配成功,exec() 方法返回一个数组,否则返回null

元字符

普通字符:

大多数的字符仅能够描述它们本身,这些字符称作普通字符,例如所有的字母和数字。也就是说普通字符只能够匹配字符串中与它们相同的字符。

  • 元字符(特殊字符)
    是一些具有特殊含义的字符,可以极大提高了灵活性和强大的匹配功能。比如,规定用户只能输入英文26个英文字母,普通字符的话 abcdefghijklm.....但是换成元字符写法: [a-z]

参考文档:

MDN:developer.mozilla.org/zh-CN/docs/…
正则测试工具: tool.oschina.net/regex

边界符

正则表达式中的边界符(位置符)用来提示字符所处的位置,主要有两个字符

image.png 如果 ^ 和 $ 在一起,表示必须是精确匹配。举例:

 <script>
        let reg = /^abc$/
        let re = reg.exec('abc')
        let rg = reg.exec('acsdfghjklertykl')
        console.log(re, rg);
        /^abc$/只能匹配到abc这三个字母,再有其他的是不可以的
    </script>

image.png

量词符

量词用来 设定某个模式出现的次数 image.png

image.png

字符类:

[ ] 匹配字符集合

  • 后面的字符串只要包含 abc 中任意一个字符,都返回 true 。

image.png

  • [] 里面加上-连字符 使用连字符 - 表示一个范围 image.png 比如:
    ①[a-z] 表示 a 到 z 26个英文字母都可以
    ②[a-zA-Z] 表示大小写都可以
    ③[0-9] 表示 0~9 的数字都可以
  • [] 里面加上 ^ 取反符号 比如:
    [^a-z] 匹配除了小写字母以外的字符,注意要写到中括号里面
  • .点匹配除换行符之外的任何单个字符
  • let reg = /^(m|n|l)$/ |竖线代表从这几个值取其中的任意一个
    特殊字符一定要用小括号,不要用大括号!!!大括号会把特使字符变成字符串 image.png

image.png

修饰符

补充:字符串替换 replace 语法: image.png

image.png

补充:change事件

内容修改后才会触发,用于input元素 image.png

综合案例

image.png

image.png

疑问点

属性选择器

image.png

触发事件和定时器引用函数不用加括号

image.png

submit和click事件对比

form对应submit
click对应提交按钮对应的元素
两者实现的功能都是一样的:①提交数据。②跳转页面 image.png

触发事件中的函数可以调用到其他地方

image.png next点击事件理解成是一个对象,click是他的一个属性,click后面的那个函数理解成属性值

image.png