Js高级-正则表达式、本地存储

"本文详细介绍了JavaScript中的正则表达式,包括元字符、限定符和其他符号的使用,以及如何通过正则对象进行匹配、替换和提取操作。通过实例演示了d、D、w、W等元字符的功能,并展示了如何利用限定符进行重复匹配。此外,还讲解了如何使用[]、、|等其他符号来增强正则表达式的灵活性。文章最后阐述了正则表达式的创建方式和常用方法,如test()、match()、replace()等。"
摘要由CSDN通过智能技术生成

一、正则表达式

1、目的:表单的验证
2、定义:就是用事先定义好的:些特定字符、 及这些特定字符的组合,组成.个“ 规则字符串”
3、特定字符:元字符 限定符 其他字符
4、作用:匹配 替换 提取
5、创建正则对象

二、元字符

// 1、\d    匹配至少有一个数字
var reg = /\d/
console.log(typeof reg);
console.log(reg instanceof Object);
console.log(reg.constructor);
document.getElementById('inp').onblur = function () {
    var reg = /\d/;
    console.log(reg.test(this.value));
    if (reg.test(this.value)) {
        console.log('成功');
    }
}
// 2、\D    匹配至少任意一个非数字的字符
document.getElementById('inp').onblur = function () {
    var reg = new RegExp(/\D/)
    console.log(reg.test(this.value));
}
// 3、\w    匹配至少一个字母或数字或下划线
var str = '哈哈'
var reg = new RegExp(/\w/)
console.log(reg.test(str));
// 4、\W    匹配至少有一个不是字母,数字,下划线
var str = '1'
var reg = new RegExp(/\W/)
console.log(reg.test(str));
// 5、\s    匹配至少任意的空白符
var str = '111'
var reg = /\s/
console.log(reg.test(str));
// 6、\S    匹配至少一个不是空白符的字符
var str = '111'
var reg = /\S/
console.log(reg.test(str));
// 7、.     匹配至少有一个非换行符
var str = '\n'
var reg = /./
console.log(reg.test(str));
// 8、^     表示匹配行首的文本(以谁开始)^\d
var str = '222222'
var reg = /^\d/
console.log(reg.test(str));
// 9、$     表示匹配行尾的文本(以谁结束)\d$
var str = '1'
var reg = /^\d$/
console.log(reg.test(str));

三、限定符

     
// 1、   重复零次或更多次\d*   /^ab*$/:表示一个字符串有一个a后面跟着零个或若干个b。('a','ab','abbbb',……)
var str = 'abbbbbb'
var reg = /^ab*$/
console.log(reg.test(str));
// 2、+     重复一次或更多次\d+     /ab+/:表示一个字符串有一个a后面跟着至少一个b或者更多;
var str = '111'
var reg = /1+/
console.log(reg.test(str));
// 匹配全数字
var reg = /^\d+$/
console.log(reg.test(str));
// 3、?     重复零次或一次      /^ab?$/:表示一个字符串有一个a后面跟着零个或者一个b;
var str = 'ab'
var reg = /^ab?$/
console.log(reg.test(str));
// 4、{n}   至少重复n次
var str = '333'
var reg = /3{3}/
console.log(reg.test(str));
// 5、{n,m}     重复n到m次
var str = '2222'
var reg = /2{2,5}/
console.log(reg.test(str));

四、其他符号

// 1、[] 字符串用括号括起来,表示匹配其中的任意字符,相当于或的意思[0-9]
var str = '11哈哈'
var reg = /[哈哈]/
console.log(reg.test(str));
// 2、\ 转义符:\的用法 \主要是用在正则表达式中的特殊符号转换成它本身的意思
var str = '.'
var reg = /\./
console.log(reg.test(str));
// 3、| 或者,选择两者中的一个。注意|将左右两边分成两部分,而不管左右两边有多长多乱
var str = 'abnbAaAAaBBD'
var reg = /[a-z]|[A-Z]/
console.log(reg.test(str));
// 匹配全数字
var reg = /^\d+$/
// 匹配小写字母
var reg = /^[a-z]+$/
// 匹配大写字母  小写字母   数字
var reg = /^[a-zA-Z0-9]+$/
// 匹配银行卡
var reg = /^[1-9]\d{9,29}$/
var reg = /^(?:[\u4e00-\u9fa5·]{2,16})$/

1、字面量创建

var 变量 = /特定字符or组合/

2、构造函数创建

var 变量 = new RegExp(/特定字符or组合/)

五、用法:

正则对象 . test(字符串) 返回boolean类型 true匹配成功 false不成功

正则的提取和替换

math( ):方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。返回数组

g:全局匹配

i:忽略大小写

gi:全局匹配 忽略大小写

replace() 替换

replaceAll() 全部替换

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值