JS-正则表达式(基本语法、test、exec、\d\D\w\W\s\S .)
二,正则表达式
1,什么是正则表达式
是一种规范,对字符串格式进行验证的规范
不用自己写,常用的正则表达式,网上都有,只要会使用就可以 2,定义方法
字面量 var reg = /正则表达式/ 常用方法
构造函数 var reg = new RegExp('正则表达式') 3,正则方法
正则表达式.test(字符串) 验证字符串是否符合规范 4,基本语法
元字符: 小写的表示 只要有其中一个出现就可,大写表只要出现它没有的即只要取非就可
\d 数字
\D 非数字 \w 数字,字母,下划线
\W 非 数字,字母,下划线 \s 空格
\S 非空格 . 非换行 边界符
^ 开始
$ 结束 限定符
* 0 --- 正无穷
+ 1 --- 正无穷
? 0 --- 1
{n} 只能是n个
{n,} 至少是n个
{n,m} n至m个 特殊符号
\ 解析元字符和转义符
| 逻辑或
() 作为整体执行
[] 只要是其中一个数值,就符合
a-b a至b范围之内的
[^] 对内容取反 写在表达式之外的
/正则/i 不区分大小写
/正则/g 全局匹配 5,和正则表达式相关联的函数
search()
默认区分大小写,使用正则,不区分大小写
不区分大小写 变量.search(/正则/i) match()
默认只捕获第一个符合的内容,正则表达式捕获所有符合的内容
全局匹配 变量.match(/正则/g) replace()
默认只替换第一个符合的内容,正则表达式替换所有符合的内容
全局匹配 变量.replace( /正则/g , 要替换写入的内容)
一.正则表达式
什么是正则表达式
对字符串内容,进行格式和内容的验证
对于正则表达式,我们不用自己去写,所有常用的正则表达式,在网上都可以搜到
我们只需要能看懂,会使用
所有的计算机语言,正则表达式,都是相同的,通用
正则表达式的基本语法
1,字面量(常用)
使用 // 来包裹表达式内容
var 变量 = /正则表达式/
2,构造函数
var 变量 = RegExt(‘正则表达式’);
正则表达式的使用方法
1,验证
判断字符串内容是否符合正则表达式的规范
执行结果是 布尔类型
语法 : 正则表达式.test(‘字符串内容’);
2,捕获
捕获获取字符串中符合正则表达式规范的内容
执行结果是捕获获取到的符合规范的字符串内容
语法 : 正则表达式.exec(‘字符串内容’)
二.正则表达式之常用语法规范
正则表达式,常用语法规范 正则表达式中,不要随便写空格,因为空格也会作为验证格式的一部分 1,元字符
使用一些符号,来表示规范 \d 表示数值,数字,只要有数字即可,不用都是数字
\D 表示非数字,只要有不是数字的就可,不用都是非数字 \w 表示数字,字母,下划线,只要有其中一个就可
\W 表示非数字,字母,下划线,只要有不是字母或数字下划线就可 \s 表示空格,只要有空格就可
\S 表示非空格 只要有不是空格的就可 . 表示非换行
字符串中的换行,使用 转义符 \n 表示 提示 正则表达式和转义符,都是 \内容的形式
JavaScript会自动识别,如果是 \内容 符合正则表达式,就按照正则表达式来执行
符合转义符,就按照转义符的形式执行
正则表达式和转义符不会冲突 // 只要有数字即可,不用都是数字
var reg1 = /\d/ ; console.log(reg1.test('123456')) ; → true
console.log(reg1.test('abcd')) ; → false
console.log(reg1.test('1234abcd')) ; → true var reg2 = /\D/; console.log(reg2.test('123456')) ; → false
console.log(reg2.test('abcd')) ; → true
console.log(reg2.test('1234abcd')) ; → true
console.log(reg2.test('!@#$%^')) ; → true var reg3 = /\w/; console.log( reg3.test('123avbc_') ); → true
console.log( reg3.test('!@#$%^') ); → false
console.log( reg3.test('1234!@#$%^') ); → true var reg4 = /\W/; console.log( reg4.test('123avbc_') ); → false
console.log( reg4.test('!@#$%^') ); → true
console.log( reg4.test('1234!@#$%^') ); → true var reg5 = /\s/;
console.log( reg5.test(' ') ); → true
console.log( reg5.test('312斤kfjisa') ); → false
console.log( reg5.test('312斤 kfjisa') ); → true var reg6 = /\S/;
console.log( reg6.test(' ') ); → false
console.log( reg6.test('312斤kfjisa') ); → true
console.log( reg6.test('312斤 kfjisa') ); → true var reg7 = /./; console.log( reg7.test('\n') ); → false
————————————————
版权声明:本文为CSDN博主「咩有猫腻.」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:JS-正则表达式(基本语法、test、exec、\d\D\w\W\s\S .)
JS-正则表达式(基本语法、test、exec、\d\D\w\W\s\S .)的更多相关文章
- JS 正则表达式基本语法(精粹)
1.正则表达式基本语法 两个特殊的符号'^'和'$'.他们的作用是分别指出一个字符串的开始和结束. 例子如下: "^The":表示所有以"The"开始的字符串( ...
- js正则表达式基本语法
正则表达式基本语法 两个特殊的符号'^'和'$'.他们的作用是分别指出一个字符串的开始和结束. 例子如下: "^The":表示所有以"The"开始的字符串(&q ...
- js正则表达式test方法、exec方法与字符串search方法区别
1.正则表达式test方法 test() 方法用于检测一个字符串是否匹配某个模式 返回值: 如果字符串 string 中含有与 RegExpObject 匹配的文本,则返回 true,否则返回 fal ...
- js正则表达式replace里有变量的解决方法用到RegExp类
一直比较害怕使用正则表达式,貌似很深奥很复杂的样子,所以在用js操作字符串的时候,我最多使用的是replace.split.substring.indexOf等函数,这些函数有时候需要多次叠加使用,但 ...
- JS正则表达式常用总结
正则表达式的创建 JS正则表达式的创建有两种方式: new RegExp() 和 直接字面量. //使用RegExp对象创建 var regObj = new RegExp("(^\\s+) ...
- JS 正则表达式用法
JS 正则表达式用法简介 简单的说,正则表达式是一种可以用于模式匹配和替换的强有力的工具.其作用如下: 测试字符串的某个模式.例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或 ...
- js 常用js正则表达式大全
一.校验数字的js正则表达式 1 数字:^[0-9]*$ 2 n位的数字:^d{n}$ 3 至少n位的数字:^d{n,}$ 4 m-n位的数字:^d{m,n}$ 5 ...
- js正则表达式语法
1. 正则表达式规则 1.1 普通字符 字母.数字.汉字.下划线.以及后边章节中没有特殊定义的标点符号,都是"普通字符".表达式中的普通字符,在匹配一个字符串的时候,匹配与之相同的 ...
- [转载]js正则表达式语法
1. 正则表达式规则 1.1 普通字符 字母.数字.汉字.下划线.以及后边章节中没有特殊定义的标点符号,都是"普通字符".表达式中的普通字符,在匹配一个字符串的时候,匹配与之相同的 ...
- js正则表达式语法[转]
1. 正则表达式规则 1.1 普通字符 字母.数字.汉字.下划线.以及后边章节中没有特殊定义的标点符号,都是"普通字符".表达式中的普通字符,在匹配一个字符串的时候,匹配与之相同的 ...
随机推荐
- 妙用编辑器:使用Notepad--的标记颜色功能更高效的阅读日志文件
应用场景 在日常维护工作中,经常需要查看一些日志,以判断系统的运行状态或者进行问题定位,当系统出现故障时,一般都会有特殊的关键字,但对于浩如烟海的日志来说,识别这些关键字信息还是非常费眼力的,比如有如 ...
- KubeSphere 社区双周报 | OpenFunction 发布 v1.1.0 | 2023.5.26-6.8
KubeSphere 社区双周报主要整理展示新增的贡献者名单和证书.新增的讲师证书以及两周内提交过 commit 的贡献者,并对近期重要的 PR 进行解析,同时还包含了线上/线下活动和布道推广等一系列 ...
- 初探AI之got-ocr2.0大模型本地部署与遇到的各种坑处理
一.环境搭建 1.安装cuda,本人使用的是12.1版本,下载地址:https://developer.nvidia.com/cuda-12-1-1-download-archive 2.安装cond ...
- ArgoWorkflow教程(七)---高效的步骤间文件共享策略
之前我们分析了使用 artifact 实现步骤间文件共享,今天分享一下如何使用 PVC 实现高效的步骤间文件共享. 1. 概述 之前在 artifact 篇我们演示了如何使用 artifact 实现步 ...
- Redisson 工作原理-源码分析
时间不在于你拥有多少,而在于你怎样使用. 1:Redisson 是什么 个人理解:一种 可重入.持续阻塞.独占式的 分布式锁协调框架,可从 ReentrantLock 去看它. ①:可重入锁 拿到锁的 ...
- Go语言学习 _基础04 _Map&Set
Go语言学习 _基础04 _Map&Set 1.map package map_test import ( "fmt" "testing" ) func ...
- LVM 使用与扩容总结
转载请注明出处: LVM(Logical Volume Manager,逻辑卷管理器)是一个用于Linux系统的磁盘管理工具.它提供了一种更加灵活的存储管理机制,可以方便地进行磁盘的扩容.缩减.快照以 ...
- 4. Spring Cloud Ribbon 实现“负载均衡”的详细配置说明
4. Spring Cloud Ribbon 实现"负载均衡"的详细配置说明 @ 目录 4. Spring Cloud Ribbon 实现"负载均衡"的详细配置 ...
- Flink CDC 实时同步 Oracle
Flink CDC 系列文章 Flink CDC 实时同步 MySQL Flink CDC 实时同步 Oracle 准备工作 Oracle 数据库(version: 11g) 开启归档日志 sqlpl ...
- node-npm发布包-package.json中bin的用法
前言 用过angular-cli,create-react-app这些脚手架的朋友们,不知道你们有没有好奇过,为什么安装这些脚手架后,可以使用类似ng generate之类的命令.小弟研究了以下,原来 ...