JS高级笔记6

时间:2019/11/5

4.正则表达式
1).正则表达式概述


概述.jpg

2).JS中正则表达式(正则表达式中不需加引号)

// 1.利用RegExp对象创建
var regexp = new RegExp(/123/);
var regexp = new RegExp('123');

// 2.利用字面量创建
var rg = /123/;

// 3.test方法用来检测字符串是否符合正则表达式要求的规范
rg.test(123); // true
rg.test('abc'); // false

3).正则表达式中的特殊字符
1.边界符
^ 表示匹配行首的文本
$ 表示匹配行尾的文本
两者结合表示精确匹配
2.字符类
[ ] 表示有一系列字符可供选择,只要匹配其中一个就可以,多选一

/[abc]/ 包含a或b或c中任意
/^[abc]$/ 只能为a或b或c
/^[a-z]$/ 26个小写英文字母中的一个
/^[a-zA-Z0-9_-]$/ 字符组合(英文字母,数字,以及下划线,短横线)
/^[^a-zA-Z0-9_-]$/ [ ]内^取反符,表示不包含

3.量词符
* 可以出现0次或很多次
+ 可以出现1次或很多次
? 可以出现0次或1次
{ } 重复次数({3}次数为3;{3, }次数大于等于3;{3,16}次数大于等于3且小于等于16)

/^[a-zA-Z0-9_-]{6,16}$/

4.小括号()表示优先级

/^abc{3}$/  // 匹配abccc
/^(abc){3}$/ // 匹配abcabc

5.预定义类(某些模式的简写方式)


预定义类.jpg

6.表单验证案例


案例.jpg

4).正则表达式中的替换

stringObject.replace(regexp/substr, replacement); // 返回替换后的新字符串

1.正则表达式参数

/表达式/[switch]
switch: g(全局匹配); i(忽略大小写); gi(全局匹配且忽略大小写)

str.replace(/敏感词1|敏感词2/g, '*'); // 敏感词替换
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 几个正则表达式编辑器 Debuggex :https://www.debuggex.com/ PyRegex:ht...
    没技术的BUG开发攻城狮阅读 4,628评论 0 23
  • 本文译自 制作正则引擎的作者 Jan Goyvaerts 为工具 RegexBuddy 写的教程版权归原作者所有注...
    极客圈阅读 3,331评论 0 25
  • 概述 正则表达式(regular expression)是一种表达文本模式(即字符串结构)的方法,有点像字符串的模...
    许先生__阅读 277评论 0 1
  • 一、概述 正则表达式(regular expression)是一种表达字符串结构的方法,有点像字符串的模版,常常用...
    周花花啊阅读 614评论 0 1
  • 以前我会想如果遇见一个人我会希望他爱我多一点还是更爱自己多一点后来我发现其实答案很简单我那么爱他 所以我希望他爱自...
    HeartsFlying阅读 65评论 0 0